【问题标题】:Compilation Error when using kendo.mvc.ui in my web.config file在我的 web.config 文件中使用 kendo.mvc.ui 时出现编译错误
【发布时间】:2019-07-16 06:42:06
【问题描述】:

我有一个应用程序,我正在使用Kendo.Mvc.UI 现在我正在创建另一个项目,我想在其中使用Kendo.Mvc.UI 所以我添加了Kendo.Mvc.UI 我的bin 文件夹,请参阅下面的图片供参考

并在 Pages > Namespaces 中添加以下代码 my main web.config

<add namespace="Kendo.Mvc.UI" />//the same code is working in my previous project.

我的web.config 中的以下行位于views 文件夹中

<add namespace="Kendo.Mvc.UI" /> //this is same in both the web.config 

但我收到以下错误

编译错误说明:编译过程中发生错误 编译服务此请求所需的资源。请 查看以下特定错误详细信息并修改您的源 适当地编码。

编译器错误消息:CS0246:类型或命名空间名称“kendo” 找不到(您是否缺少 using 指令或程序集 参考?)

来源错误:

第56行:&lt;add namespace="System.Web.Routing" /&gt;

第 57 行:&lt;add namespace="System.Web.WebPages" /&gt;

第 58 行:&lt;add namespace="kendo.mvc.ui" /&gt;

第 59 行:&lt;/namespaces&gt;

第 60 行:&lt;/pages&gt;

【问题讨论】:

  • 你有什么东西可以转换/转换成小写吗? AFAIK web.config 中的命名空间必须与引用列表中的实际命名空间匹配,我从未见过 web.config 中的命名空间可以预先转换为小写。
  • 您是否真的将 Kendo.Mvc.dll 添加到项目的引用中,而不是仅将其导入 bin 文件夹?
  • @DavidShorthose 导入 bin 文件夹并在引用中添加引用
  • @TetsuyaYamamoto 不,我没有添加任何东西,这也让我感到困惑,如何将其更改为小写

标签: c# asp.net-mvc kendo-ui


【解决方案1】:

使用我目前有以下应该工作的项目:在主要web.config

指令应该在这里:

  <system.web>

   ...All other options removed for brevity....
    <pages>
      <namespaces>
        <add namespace="Kendo.Mvc.UI" />
      </namespaces>
    </pages>
  </system.web>

然后在 Views 文件夹下的 web.config 中,它应该如下所示:

  <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.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.Optimization" />
        <add namespace="System.Web.Routing" />

        <add namespace="Kendo.Mvc.UI" />

      </namespaces>
    </pages>
  </system.web.webPages.razor>

根据您的第一张图片,这看起来是正确的。

假设您正确配置了 web.config 文件,那么当您键入 @Html.Kendo().&lt;control here&gt; 之类的内容时,智能感知应该在关闭并重新打开项目后启动(如果它不能立即识别它)

假设您已将Kendo.MvcKendo.Mvc.Export dll 的引用添加到项目中。

您是否尝试使用 Telerik Kendo UI for MVC 插件来升级项目,因为这也可能有助于为您解决此问题。如果您没有此选项,请尝试通过软件包更新程序或 Telerik 的进度更新程序软件下载它。

作为旁注,我在您的图片中注意到您有一个文件System.Web.Http.Cors.xml 处于错误状态。这可能会阻止您的项目正确构建,这可能会影响剑道的 dll 正确加载。

就个人而言,在项目中添加/引用 dll 时,我更喜欢将文件添加到项目旁边的 lib 文件夹中,而不是将文件添加到 bin 文件夹中,因为 bin 文件夹通常不包含在源代码管理签入中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-19
    • 1970-01-01
    • 2013-06-16
    相关资源
    最近更新 更多