如何在Visual Studio中指导RazoreEditor拾取脚本#mscorlib.dll而不是.Net Framework mscorlib.dll?

如何在Visual Studio中指导RazoreEditor拾取脚本#mscorlib.dll而不是.Net Framework mscorlib.dll?,razor,script#,Razor,Script#,我们正在开发一个Html模板引擎,它使用Razor语法将Html模板转换为scrip代码 当我们在ScriptSharp项目中添加cshtml文件时,visual studio中RazoreEditor提供的intellisense正在将System、System.Collections命名空间以及这些命名空间中的类型解析为.net Framework mscorlib.dll,而不是ScriptSharp mscorlib.dll。 但是C#代码编辑器中的intellisense正确地将名称空

我们正在开发一个Html模板引擎,它使用Razor语法将Html模板转换为scrip代码

当我们在ScriptSharp项目中添加cshtml文件时,visual studio中RazoreEditor提供的intellisense正在将System、System.Collections命名空间以及这些命名空间中的类型解析为.net Framework mscorlib.dll,而不是ScriptSharp mscorlib.dll。 但是C#代码编辑器中的intellisense正确地将名称空间解析为脚本#mscorlib,因为脚本#项目的csproj文件包含包含脚本#mscorlib.dll的文件夹的引用路径

我试过以下方法,但没有成功

  • 在ScriptSharp项目文件夹中添加了一个web.config文件,
    显式添加了对ScriptSharp mscorlib dll的引用
    在System.web>编译>程序集部分

  • 创建了一个bin文件夹并复制了scriptsharp mscorlib dll

有没有办法提示Razor编辑器选择脚本#mscorlib.dll而不是
.net Framework mscorlib.dll?

Razor使用了一个特殊的配置部分,类似这样,它不使用
编译元素

<system.web.webPages.razor>
  ...
  <pages pageBaseType="System.Web.Mvc.WebViewPage">
    <assemblies>
      ...
    </assemblies>
    <namespaces>
      ...
    </namespaces>
  </pages>
</system.web.webPages.razor>

...
...
...
您还需要添加此配置部分的定义:

<configSections>
  <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  </sectionGroup>
</configSections>


谢谢你的回复,保罗。但是如果我尝试这个,我会得到这个错误“无法识别的配置部分System.web.webPages.razor/assemblies”。我已经尝试过了,但是没有成功。看起来Assemblys元素在以下任何元素System.web.webPages.razor、host、pages下都无效。当它抱怨System.web.webPages.razor时,请确保System.web.webPages dll被引用并设置为Copy Local:True