【发布时间】:2013-04-10 08:38:27
【问题描述】:
我正在尝试强烈键入呈现为 ASP.NET ASPX 页面的 MVC 视图模型。一切都在一个大项目中。但是,它说它找不到名称空间,我做错了什么?
这是错误:
CS0234: The type or namespace name 'MyModel' does not exist in the namespace
'MyProject.Models' (are you missing an assembly reference?)
这是我的自定义模型:
namespace MyProject.Models {
public class MyModel{
public string companyID { get; set; }
public MyModel(string companyID){
this.companyID = companyID;
}
}
}
这是我在 ASPX 中呈现的强类型视图,文件名为 MyStronglyTypedView.aspx:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<MyProject.Models.MyModel>" %>
<%@ import namespace='MyProject.Models' %>
.....
<script runat="server">
protected void Page_Load(object sender, EventArgs e) {
var curCompany = Model.companyID;
}
</script>
....
这是我调用页面并将模型传递给它的方式(我在单独的 Razor 页面上将其作为部分调用):
@Html.Partial("MyStronglyTypedView",new MyProject.Models.MyModel("1"))
【问题讨论】:
-
MyProject.Models是否在与您的 Web 应用程序项目分开的程序集中定义?您是否在您的网络应用中明确包含对MyProject.Models的引用? -
不,一切都在一个项目中,所以我认为它不需要包含自己作为参考。
-
顺便说一句。为什么要标记“剃须刀”?你不使用“剃须刀”……[恕我直言,这很奇怪]
-
我在单独的 razor 页面上调用 aspx 页面,注意最后一个代码块。
标签: c# asp.net-mvc razor