将ID从视图传递到子类的控制器的最佳方法是什么?

时间:2019-03-31 12:10:00

标签: c# asp.net-core-mvc azure-cosmosdb

我正在使用asp.net核心MVC和cosmosDB,我想创建一个子类的实例。

我正在使用以下模型:

    public class Person
    {

        [JsonProperty(PropertyName = "id")]
        public string Id { get; set; }

        public string Name { get; set; }

        public Pet[] Pets { get; set; }

    }

    public class Pet
    {

        [JsonProperty(PropertyName = "petId")]
        public string PetId { get; set; }

        public string Name { get; set; }
    }

在“人员”的详细信息视图中,我使用“创建”按钮添加新的宠物:

@model Models.Person

    <a asp-controller="Pets" asp-action="Create" asp-route-id="@Model.Id">Create</a>
}

Pets控制器看起来像这样:


        // GET: Pets/Create
        public IActionResult Create()
        {
            return View();
        }

        // POST: Pets/Create
        [HttpPost]
        [ValidateAntiForgeryToken]
        public async Task<IActionResult> Create([Bind("PetId,Name")] Pets pet, String id)
        {
            string personId = ID
            // fill database
        }

必须有可能将宠物添加到现有人员中。我想知道是否有更好的方法将ID从Person的角度传递给Pet的控制者?

0 个答案:

没有答案