代码之家  ›  专栏  ›  技术社区  ›  Grant Palin Bob King

在项目升级到VS2010后生成程序集信息时出错

  •  3
  • Grant Palin Bob King  · 技术社区  · 14 年前

    直到现在,我的标准NAnt构建脚本还没有给我带来任何麻烦。但是,在更新项目之后 updating the NAnt config 为了了解新的工具,我现在在自动生成装配信息时收到一个错误,导致构建失败。相关的构建任务如下:

    <asminfo output="${dir.src}\${file.commonAssemblyInfo}" language="${project.codeLanguage}">
        <imports>
            <import namespace="System.Reflection" />
        </imports>
        <attributes>
            <attribute type="AssemblyVersionAttribute" value="${project.fullversion}" />
            <attribute type="AssemblyFileVersionAttribute" value="${project.fullversion}" />
            <attribute type="AssemblyInformationalVersionAttribute" value="${project.fullversion}" />
            <attribute type="AssemblyCopyrightAttribute" value="${assembly.copyright}" />
            <attribute type="AssemblyCompanyAttribute" value="${assembly.company}" />
            <attribute type="AssemblyConfigurationAttribute" value="${project.config}" />
            <attribute type="AssemblyTrademarkAttribute" value="${assembly.trademark}" />
            <attribute type="AssemblyProductAttribute" value="${assembly.product}" />
        </attributes>
    </asminfo>
    

    错误将突出显示在 asminfo 任务。上面写着:

    无法生成AssemblyInfo文件“C:\Users\Grant\Projects\VisualStudio\Checklist\src\CommonAssemblyInfo.cs”。 此方法隐式地使用已被.NET Framework淘汰的CAS策略。为了出于兼容性原因启用CAS策略,请使用NetFx40\u LegacySecurityPolicy配置开关。请看 http://go.microsoft.com/fwlink/?LinkID=155570 更多信息。

    到目前为止,我已经收集到了.NET4中的一些新内容。以前有人处理过这个错误吗?有人知道这是怎么回事吗 asminfo公司

    3 回复  |  直到 14 年前
        1
  •  1
  •   Grant Palin Bob King    14 年前

    我想我知道了。结果发现,框架的一些安全方面发生了变化,新工具考虑到了这一点,但旧版本的NAnt没有考虑到这一点(当时使用的是0.85)。

    latest nightly from the NAnt site (0.91是beta版,支持.NET4),重新运行我的构建,它成功了。我不得不解决一个单独的问题,但构建现在正在工作。

        2
  •  0
  •   Charles    14 年前

    南特队刚刚释放 NAnt 0.91 Alpha 1 ,支持.NET4.0(实验)。请下载测试并向团队提供宝贵的反馈。

    谢谢。

        3
  •  0
  •   ogaltsev    9 年前

    要忽略stylecop规则并修复它,可以添加 *csproj先生 文件下一个设置:

    <ExcludeFromStyleCop>true</ExcludeFromStyleCop>
    

        <Compile Include="Properties\AssemblyInfo.cs">
          <ExcludeFromStyleCop>true</ExcludeFromStyleCop>
        </Compile>