什么是强类型在Asp.Net中查看数据MVC
答
ASP.NET MVC中的强类型视图继承自System.Web.Mvc.ViewPage<T>
并包含由T指定类型的Model属性。这允许intellisense在视图中工作。
答
每个视图都有一个Model
属性。要强类型化视图意味着使它从一些ViewPage<T>
继承,并且Model属性成为T的类型。如果您没有强制键入视图,则该模型的类型为“Object”。
强烈地输入View的模型具有优点,因为您可以直接访问模型的属性。你会得到intellisense和编译器检查,而不是依靠使用“魔术字符串”来访问ViewData字典 - 如果你的模型发生了变化,它将在运行时中断。
例如,如果你有
public class Person
{
public int Age { get; set; }
}
,你做你的视图强类型的Person
类,你就可以访问您的视图模板Model.Age
。如果您的View没有强类型,那么Model
将没有属性供您访问,您必须将其显式转换为类型或通过ViewData字典传递数据。
要强烈键入此视图,您只需使其从ViewPage<Person>
继承。
答
假设您需要在视图上显示几条松散相关的数据:联系信息,销售预测和通话记录。你可以简单地将这些注入到ViewData中,然后将它们从视图中强制类型化,然而更好的方法是创建一个封装每个视图的自定义模型。然后,您会强烈地将视图本身输入到此自定义模型中。它起着类型安全性作用,并使代码辅助功能更直观,其中包括可测试性等其他好处。