我有2个.NET MVC项目和一些类库项目的解决方案。我也有一些xml文件。我需要将这些xml文件放在一个位置,并可以从这2个.NET MVC项目中访问它们。这些文件也需要发布。 我可以在类库项目中创建App_Data文件夹并将这些xml文件放在那里并使用它们吗?还是与.NET MVC项目相关的App_Data文件夹?
如何解决我的问题?
答案 0 :(得分:0)
如果您的两个MVC项目位于同一服务器上,则可以将这些xml文件存储在所需的任何位置。
通过添加appSetting键将这两个xml文件文件夹的物理路径存储到这两个MVC项目的web.config文件中。
然后,您的程序只需从web.config文件中获取路径来读取这些文件。
答案 1 :(得分:0)
这取决于您打算如何使用xml文件,但是如果我正确理解了您,您只是希望将该文件发布到输出目录,那么这意味着该文件可以被任何可访问的库/项目访问。正在运行。
因此,如果您将xml库放在您说的通用项目中,则可以编辑该xml文件的属性并进行设置。将操作构建为内容,或将复制到输出目录为始终(取决于您执行发布的方式,其行为可能会有所不同)。
然后该文件应出现在两个bin文件夹中。
或者,如果这不起作用,则可以从两个项目中创建指向同一文件的快捷方式。您可以点击“添加现有项目”,然后点击Add
按钮旁边的三角形,然后在菜单中选择add as a link
答案 2 :(得分:0)
第1步。创建共享文件夹(该文件未包含在您的项目中)并将所有共享文件复制到此处。 第2步。更改 .csproj 文件并描述预构建操作,该操作只会将所有需要的文件从共享文件夹复制到您的项目中。像这样:
<Target Name="CodeAnalysisRuleset" BeforeTargets="PreBuildEvent" Condition="$(ConfigurationName) == Debug">
<Exec Command="xcopy /Y "$(SolutionDir)\SharedCodingRules\codeAnalysis.ruleset" "$(ProjectDir)"" />
</Target>
第3步。将新文件明确包含到您的项目中(再次更改.csproj文件)
<ItemGroup>
<Content Remove="stylecop.json" />
</ItemGroup>
<ItemGroup>
<AdditionalFiles Include="stylecop.json" />
</ItemGroup>
完成这三个步骤后,您将可以在不同项目中使用共享文件(配置,rullset等)。