加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

razor – ASP.NET Core中当前上下文中不存在名称“model”

发布时间:2020-12-16 03:38:37 所属栏目:asp.Net 来源:网络整理
导读:我正在尝试使用ASP.NET Core开发一个带有插件的网站.我有我的主项目,asp.net web应用程序工作正常.我有一个带有控制器的类库项目,它也可以正常工作,并且我遇到了问题.当我打开* .cshtml文件时,我可以看到Razor不起作用 – @using,@ model和其他指令无法识别,
我正在尝试使用ASP.NET Core开发一个带有插件的网站.我有我的主项目,asp.net web应用程序工作正常.我有一个带有控制器的类库项目,它也可以正常工作,并且我遇到了问题.当我打开* .cshtml文件时,我可以看到Razor不起作用 – @using,@ model和其他指令无法识别,智能感知不起作用.当我将鼠标悬停在模型上时,我从标题中得到错误:

The name ‘model’ does not exist in current context in ASP.NET Core

我使用EmbeddedFileProvider来发现视图,并将它们标记为嵌入式资源.当我运行应用程序一切正常 – 视图正确呈现.我唯一的问题是Visual Studio中的误报错误.我用谷歌搜索和类似的问题,但主要是为了ASP.NET MVC,而不是Core – like here.我认为类库配置中缺少一些东西,但我不确定究竟是什么.

解决方法

新的csproj文件在顶层“Project”元素中具有“Sdk”属性.创建新的Web应用程序时,将其设置为“Web”SDK:

<Project Sdk="Microsoft.NET.Sdk.Web">...</Project>

添加/创建类库时,它默认为标准的非Web SDK:

<Project Sdk="Microsoft.NET.Sdk">...</Project>

据我所知,Web SDK导入了额外的任务,以允许设计时处理Web资源,例如Razor视图.将插件库中的SDK更改为Web.

“Web”项目的另一个参数是它默认输出一个EXE,所以也将它添加到你的插件csproj中:

<PropertyGroup>
    <OutputType>Library</OutputType>
</PropertyGroup>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读