मैं इस विषय / उत्तर का विस्तार निम्नलिखित के साथ करना चाहता हूं। जैसा कि किसी ने उल्लेख किया है, यह ऑटो-जनरेट असेंबलीइन्फो बाहरी उपकरणों के लिए एक बाधा हो सकती है। मेरे मामले में, FinalBuilder का उपयोग करते हुए , मेरे पास एक मुद्दा था कि असेम्बलीइन्फो को बिल्ड एक्शन द्वारा अपडेट नहीं किया जा रहा था। जाहिर है, FinalBuilder पर निर्भर करता है ~proj
फ़ाइल के स्थान को खोजने के लिए AssemblyInfo । मैंने सोचा, यह परियोजना फ़ोल्डर के तहत कहीं भी देख रहा था। नहीं, तो, यह बदल रहा है
<PropertyGroup>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup>
केवल आधा काम किया, अगर वीएस आईडीई / एमएस बिल्ड द्वारा बनाया गया तो उसने कस्टम असेंबली की जानकारी दी। लेकिन मुझे जरूरत थी FinalBuilder विधानसभा जानकारी फ़ाइल के लिए मैनुअल जोड़तोड़ के बिना भी करते हैं। मुझे सभी कार्यक्रमों, MSBuild / VS और FinalBuilder को संतुष्ट करने की आवश्यकता थी।
मैंने मौजूदा में प्रविष्टि जोड़कर इसे हल किया ItemGroup
<ItemGroup>
<Compile Remove="Common\**" />
<Content Remove="Common\**" />
<EmbeddedResource Remove="Common\**" />
<None Remove="Common\**" />
<!-- new added item -->
<None Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
अब, यह आइटम होने, FinalBuilder के स्थान पाता है AssemblyInfo और संशोधित फ़ाइल। हालांकि कार्रवाई None
MSBuild / DevEnv इस प्रविष्टि को अनदेखा करती है और अब Compile
कार्रवाई के आधार पर एक त्रुटि की रिपोर्ट नहीं करती है जो आमतौर पर proj
फाइलों में असेंबली इन्फो प्रविष्टि के साथ आती है ।
C: \ Program Files \ dotnet \ sdk \ 2.0.2 \ Sdks \ Microsoft.NET.Sdk \ build \ Microsoft.NET.Sdk.DefaultItems.targets (263,5): त्रुटि: डुप्लिकेट 'संकलित' आइटम शामिल थे। .NET SDK में डिफ़ॉल्ट रूप से आपकी प्रोजेक्ट निर्देशिका से 'संकलन' आइटम शामिल हैं। यदि आप स्पष्ट रूप से अपनी परियोजना फ़ाइल में शामिल करना चाहते हैं तो आप इन वस्तुओं को अपनी परियोजना फ़ाइल से हटा सकते हैं, या 'EnableDefaultCompileItems' संपत्ति को 'गलत' पर सेट कर सकते हैं। अधिक जानकारी के लिए, https://aka.ms/sdkimplicititems देखें । डुप्लिकेट आइटम थे: 'AssemblyInfo.cs'