【问题标题】:Razor Helper in MVC 3 RCMVC 3 RC 中的剃刀助手
【发布时间】:2011-05-07 23:43:07
【问题描述】:

在 MVC 3 项目中使用 razor 助手时出现错误(确实将 cshtml 文件放在 app_code 中)。 看起来生成的代码使用了错误的程序集引用。

使用 WebMatrix.Data;
使用 WebMatrix.WebData;

编译器说:

CS0246:找不到类型或命名空间名称“WebMatrix”(您是否缺少 using 指令或程序集引用?)

将它们放入 GAC 并没有改变任何东西。我不明白吗?或者这是一个错误?有什么想法吗?

【问题讨论】:

    标签: asp.net-mvc razor helpers


    【解决方案1】:

    如果您不知道 DLL 文件的确切位置或者 DLL 文件有任何依赖关系,那么自己引用 DLL 文件可能会很棘手。使用包管理器为您自动引用依赖项。

    只需在 Visual Studio 和包管理器控制台中打开工具->库包管理器->包管理器控制台 键入“Install-Package WebMatrix.Data” 你就完成了。参考这个链接

    http://www.nuget.org/packages/WebMatrix.Data/

    【讨论】:

      【解决方案2】:

      您只需将 WebMatrix.WebData.dll 添加到您的引用中。

      【讨论】:

        【解决方案3】:

        将代码放入一个文件(我选择 Fixup.cs),就像在 App_Code 目录中一样:

        using System;
        using System.Collections.Generic;
        using System.Linq;
        using System.Web;
        
        namespace WebMatrix.Data { internal class Ignore { } }
        namespace WebMatrix.WebData { internal class Ignore { } }
        

        【讨论】:

          【解决方案4】:

          mbr,我们已了解此问题并计划针对 RTM 解决此问题。您可以像 SLaks 建议的那样添加对 WebMatrix 程序集的引用,或者(我认为这更好)通过添加以下代码将这两个命名空间简单地添加到您的项目中:

          namespace WebMatrix.Data { internal class Ignore { } }
          namespace WebMatrix.WebData { internal class Ignore { } }
          

          【讨论】:

          • “CS1527:命名空间中定义的元素不能显式声明为私有、受保护或受保护内部。”将“私有”从这些类声明中删除,它可以正常工作。
          • 啊,更好。我现在喜欢它。
          【解决方案5】:

          我遇到了这个问题,并得到了这个答案的帮助。然后当我开始尝试使用 Telerik 时遇到了另一个问题,这个答案:Razor HtmlHelper Extensions (or other namespaces for views) Not Found 为我指出了解决这个问题的另一个解决方案。

          【讨论】:

            【解决方案6】:

            您需要在 Web.config 中添加对 DLL 的引用。

            【讨论】:

            • 正确!谢谢。为什么我不考虑……已经太晚了?
            • 顺便说一句,如果您不使用 WebMatrix.Data 和 WebMatrix.WebData,那么 Marcin 的回答将使您无需包含不必要的二进制文件。
            • 我在哪里可以找到这个文件?我有一个应用程序在另一个应用程序工作时显示此错误。有效的在 web.config 中没有 dll 引用,并且 bin 文件夹中没有任何内容
            猜你喜欢
            • 1970-01-01
            • 2018-05-19
            • 1970-01-01
            • 2019-08-01
            • 1970-01-01
            • 1970-01-01
            • 2023-03-24
            • 2020-01-27
            • 2011-05-10
            相关资源
            最近更新 更多