1
1
您的视图可能不是强类型。尝试以下操作:
这应该有效。它看起来不像您缺少了一个程序集,因为您能够正确地转换模型。 需要注意的是,您可以这样做,而不必费心删除/恢复视图。每个视图的第一行都有一个声明,类似于以下内容:
需要理解的重要部分是inherits属性,这意味着该视图扩展了MVC
另外,以前版本的ASP.NET MVC也存在一些问题,这些问题会有效地阻止强类型视图正常工作。见 Problem using Add View dialog in ASP.NET MVC RC1 for strongly typed view 更多细节。 编辑 :在这里发布的每个人都做了一些检测工作之后,Visual Studio似乎引用了包含Person类的程序集的旧版本。关闭开发环境,清除所有obj/bin文件夹,重新启动似乎解决了这个问题。 |
2
8
请您发布您的<%@第%>页指令好吗?应该是这样的:
是否尝试为此视图创建强类型代码隐藏文件? 您需要将视图的inherits属性更新为代码隐藏文件:
然后在后面的代码中:
我认为解决system.web.mvc.viewpage类并不是一个问题,因为这样页面就不会被加载(沿着无法找到system.web.mvc.viewpage的行,您会得到一个异常),而且您甚至无法访问model属性。 |
3
1
更新1: 请注意,您可以非常确定加载/获取类型不是问题 system.web.mvc.viewpage 或 项目.lib.models.person . 正如您在问题中提到的,当您使用以下选项时,它确实有效:
使用
虽然上面的2个都不应该引起任何麻烦,但是如果你不让它和前面提到的一起工作,这将是一个非常奇怪的场景。还要注意,如果在web.config中添加了常用的名称空间,则可以使用
这个 型号名称 您所引用的不必与导入命名空间有关,而是从在page指令中设置的类型中获取。 viewpage类具有属性t model,这就是为什么您可以访问name属性(您使用的是指定的类型)。 |
4
0
要做到这一点,您的视图应该强类型化到您的模型对象(在您的案例中是Person类)。 您只需向project.lib添加引用,并添加更新页面derivive即可使其正常工作:
|
Compoot · Django管理面板显示链接到管理的错误。py? 7 年前 |
Vasja · 将模型指定为列表C# 7 年前 |
M. Dhaouadi · 直接生成Django REST API? 7 年前 |
nikm · 根据usr django之前的“喜欢”状态更改按钮 7 年前 |
robjeiter · Django带外键的双参数过滤器查询 7 年前 |
Ben2pop · 正在检索要在查询中使用的ID,Django 7 年前 |
Ashy Ashcsi · 环回扩展内置用户模型问题 7 年前 |