【问题标题】:.NET Core Razor Class Library does not seem to work on Linux.NET Core Razor 类库似乎不适用于 Linux
【发布时间】:2020-06-16 05:56:41
【问题描述】:

我已尝试创建一个 .NET Core Razor 类库。

dotnet new razorclasslib -o test

到目前为止一切顺利。但是当我在 VSCode 中打开它并创建一个新的 cshtml 文件和一个新的类作为它的模型时,当我尝试继承 PageModel 时,我没有收到任何关于包的建议

此外,在 csproj 文件中,目标框架设置为 netstandard2.0,将其更改为 netcoreapp3.1 似乎没有任何改变。我在文档中找不到任何可以提示我如何处理此问题的内容。

谁能帮我解决这个问题?

我的系统是基本 OS 5.1 (Ubuntu 18.04),我使用的是 dotnet 3.1 sdk

【问题讨论】:

    标签: c# asp.net-core .net-core razor-pages razor-class-library


    【解决方案1】:

    我想通了。 请注意,真正的解决方案是在 EDIT2 之后提供的。我把中间的部分作为一个不应该做的例子

    Omnisharp 并没有告诉我我没有任何包含我引用的所需类的包(doh!)

    在文档中花了一些时间后,我找到了正确的,我们开始:

    dotnet add package Microsoft.AspNetCore.Mvc.RazorPages --version 2.2.5 dotnet add package Microsoft.AspNetCore.Mvc --version 2.2.0

    添加这两个包解决了这一切。

    编辑 2:显然我忽略了一个应该传递给 dotnet new 命令的简单参数;例如:

    dotnet new razorclasslib --support-pages-and-views
    

    这是在 razor 类库中使用 MVC 视图和 razor 页面所必需的。请注意,Microsoft.AspNetCore.MvcMicrosoft.AspNetCore.Mvc.RazorPages 应该像我上面那样添加。

    【讨论】:

    • 显然,给出--support-pages-and-views 标志是在csproj 文件中添加<AddRazorSupportForMvc>true</AddRazorSupportForMvc> 标记。也没有你提到的 Mvc 库参考。
    猜你喜欢
    • 1970-01-01
    • 2018-07-06
    • 1970-01-01
    • 1970-01-01
    • 2018-07-03
    • 2015-08-15
    • 1970-01-01
    • 2020-04-22
    • 1970-01-01
    相关资源
    最近更新 更多