如果我使用通过请求传递给控制器中的动作的变量id或使用模型的 IdFoo 我使用相同的 id 检索到,我需要知道它是更重还是不好的做法,我曾经通过相同的请求传递。
假设我正在使用带有 C# 和实体框架的 ASP.NET MVC4,并且我有这个带有数据注释的模型,将IdFoo声明为模型的主键:
public class Foo
{
[Key]
public int IdFoo { get; set; }
}
在我的FooController中,在Edit操作中,我需要检索 IdFoo,但它与我通过路由传递的id变量相同。
public class Foo
{
[HttpGet]
public ActionResult Create(int id = 0)
{
var Foo = db.Foo.Find(id);
// Other operations.
var Bar = Foo.IdFoo;
var Qux = id;
// Bar = Qux
...
return View(Foo);
}
}
仍然继续使用我通过请求传递的其余控制器代码的id变量是一种好的做法/性能强度较低,还是应该使用Foo.IdFoo呢?请注意, Foo.IdFoo 和 id 将始终具有相同的值,因此我知道我可以同时使用这两种方法,我只是在寻找良好做法或性能原因来证明使用一种或另一种的合理性。