我有一个html帮助程序库作为一个单独的项目。现在它引用版本4的system.web.mvc
。
如果我尝试在使用mvc3的项目中使用此库,则在尝试使用帮助程序时会抛出错误:
Compiler Error Message: CS1705: Assembly 'MyHtmlHelpers, Version=3.7.4.0, Culture=neutral, PublicKeyToken=null' uses 'System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' which has a higher version than referenced assembly 'System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
我知道我需要使用版本3的system.web.mvc
构建我的助手项目,以使其与mvc3项目兼容。我不希望有两个具有相同代码的项目,只有system.web.mvc
引用的差异。
问题在标题中。 任何帮助表示赞赏。
答案 0 :(得分:3)
我不希望只有两个具有相同代码的项目 system.web.mvc引用的差异。
您不一定需要在物理上复制源代码。您可以为您的类库创建另一个.csproj,它将源代码添加为Linked Files,并且仅替换.csproj中System.Web.Mvc引用的版本。
了解JSON.NET
等标准项目如何组织其源代码。它们支持从2.0到4.0的多个.NET版本,但源代码是相同的。这是正在完成工作的项目文件。