- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在我的 .cshtml 文件中使用来自自定义命名空间的模型。但是,每当我尝试设置模型时,Razor 都会抛出 The type or namespace name could not be found
错误。
我有一个项目设置,它使用解决方案文件夹来帮助组织,如下所示:
MyViewModel.cs 文件中的代码如下所示:
namespace MyProject.ViewModels
{
public class MyViewModel
{
}
}
好的,这就是基本布局。问题是当我尝试使用 MyViewModel
我的 Razor View 中的对象,Razor 说它找不到命名空间。如此处所示:
我相信我所做的一切都是我应该做的。似乎 Razor 无法查看解决方案文件夹。我怎样才能得到 MyViewModel
Razor 识别的对象?有什么我想念的吗?
请注意:我知道我可以简单地更改我的 @using
引用整个路径的语句。但是,在我的项目中,我在 ViewModels 文件夹中有许多解决方案文件夹,我不想逐一逐个指定。
更新
我接受了 Darin 的回答,因为它成功地回答了问题。我还在下面提供了一些关于我的具体情况以及为什么会出现这个问题的更多信息。
我进一步调查了这个问题,弄清楚了是怎么回事。我通常使用 SparkViewEngine,它允许像这样引用我的 View 模型:<viewdata model="ViewModels.MyViewModel"/>
当 Razor 不允许我以同样的方式引用 View 模型时,我认为 Razor 有问题。
每个 ViewEngine 都会创建用于帮助生成 View 的临时 CS 文件。 Spark 创建的临时文件使用“controllers”命名空间。在这种情况下,Spark 会使用 MyProject.Controllers
它的临时 CS 文件中的命名空间。这意味着我可以引用 ViewModels.MyViewModel
对象而不指定完整的命名空间,因为它与生成的 CS 文件位于同一命名空间中。
Razor 生成的临时文件使用 ASP
命名空间。这意味着我无法引用 ViewModels.MyViewModel
未指定完整命名空间的对象,因为它与生成的 CS 文件不在同一命名空间中。
最佳答案
使用 @using
将声明 View 模型的命名空间添加到 Razor View 的顶部指令:
@using MvcApplication1.ViewModels
@model MyViewModel
同时为了避免在您想要使用它的每个 Razor View 中添加它,您可以将它添加到 <namespaces>
你的部分~/Views/web.config
文件(不要与 ~/web.config
混淆):
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="MvcApplication1.ViewModels" />
</namespaces>
</pages>
</system.web.webPages.razor>
另请注意我是如何指定完整命名空间的。在您显示的屏幕截图中,您似乎只使用了 ViewModels.MyViewModel
但你确定这是正确的命名空间吗?通常当你在 Visual Studio 中添加一个类文件时,它会使用应用程序名称 + 文件夹作为命名空间的前缀,如 MvcApplication1.ViewModels
.
关于c# - Razor 是否查看解决方案文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14665315/
我只是想知道要安装哪个版本的 Visual Studio 2010(专业版或高级版)提示升级项目.. 项目包括:asp.net mvc、数据库和silverlight。 最佳答案 通常,由不同版本的相
目录 前言 1、常见 key-value 2、时效性强 3、计数器相关 4、高实时性 5、排行榜系列 6、文章小结 前言 在笔者 3 年的
目录 前言 四、技术选型 五、后端接口设计 5.1业务系统接口 5.2App 端接口 六、关键逻辑实现 6.1Red
目录 前言 一、需求分析 1.1发送通知 1.2撤回通知 1.3通知消息数 1.4通知消息列表 二、数据模型设计
目录 前言 一、多租户的概念 二、隔离模式 2.1独立数据库模式 2.2共享数据库独立数据架构 2.3共享数据库共享数据架构
导读: 虽然锁在一定程度上能够解决并发问题,但稍有不慎,就可能造成死锁。本文介绍死锁的产生及处理。 死锁的产生和预防 发生死锁的必要条件有4个,分别为互斥条件、不可剥夺条件、请求与保持条件和循环等待条
在浏览网页后,我找不到任何功能来执行此操作,我有可行的个人解决方案。也许它对某人有用。 **使用 Moment 插件转换日期。***moment(currentPersianDate).clone()
是否有一种解决方案可以很好地处理数字(1-10)手写?我试过tesseract,但我得到的只是垃圾。 理想情况下是 OSS,但商业也可以。 最佳答案 OpenCV 现在带有手写数字识别 OCR 示例。
在服务器应用程序上,我们有以下内容:一个称为 JobManager 的单例类。另一个类,Scheduler,不断检查是否需要向 JobManager 添加任何类型的作业。 当需要这样做时,调度程序会执
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 5年前关闭。 Improve this qu
当您尝试从 GitHub 存储库安装某些 R 包时 install_github('rWBclimate', 'ropensci') 如果您遇到以下错误: Installing github repo
问题在以下链接中进行了描述和演示: Paul Stovell WPF: Blurry Text Rendering www.gamedev.net forum Microsoft Connect: W
我正在寻找一种解决方案,使用标准格式 a × 10 b 在科学记数法下格式化 R 中的数字。一些同行评审的科学期刊都要求这样做,并且手动修改图表可能会变得乏味。 下面是 R 标准“E 表示法”的示例,
已编辑解决方案(如下...) 我有一个启动画面,它被打包到它自己的 jar 中。它有效。 我可以通过以下方式从另一个 java 应用程序内部调用 Splash.jar: Desktop.getDesk
什么是创建像 PageFlakes 或 iGoogle 这样的门户网站的好框架/包? ?我们希望创建一个为员工提供 HR 服务的员工/HR 门户,但我们也需要一种足够灵活的产品,以便我们可以使用它来为
我正在寻找一种解决方案,使用标准格式 a × 10 b 在科学记数法下格式化 R 中的数字。一些同行评审的科学期刊都要求这样做,并且手动修改图表可能会变得乏味。 下面是 R 标准“E 表示法”的示例,
如何将 solr 与 heritrix 集成? 我想使用 heritrix 归档一个站点,然后使用 solr 在本地索引和搜索该文件。 谢谢 最佳答案 使用 Solr 进行索引的问题在于它是一个纯文本
完整日历不包含工作时间功能选项(在任何一天的议程 View 中选择第一行和最后一行 - 例如公司不工作)。我做到了类似的事情: viewDisplay: function(view){
我正在使用 bootstrap 作为我的下拉菜单。但有一个问题, 如果我的下拉菜单有多级子菜单,那么它会显示在屏幕上,并出现底部滚动条。 如何将子菜单保留在屏幕内,我需要一个 jQuery 解决方案。
我有一个要转换为 C# 的 Excel 宏。目前我手动转到一个已经打开的 IE 窗口,从中复制所有内容(html 表)并粘贴到 excel 工作表中。然后我正在处理数据。这非常有效,因为将 html
我是一名优秀的程序员,十分优秀!