2010-05-05 15 views
30

से प्रोजेक्ट प्रकाशित करें क्या सीएलआई का उपयोग कर एमएस विजुअल स्टूडियो 2010 में एक वेब प्रोजेक्ट प्रकाशित करने का कोई तरीका है? मैं एक परियोजना बनाने के लिए DevEnv.exe/Build का उपयोग करता हूं और यह ठीक काम करता है, लेकिन मुझे एक प्रोजेक्ट प्रकाशित करने का विकल्प नहीं मिला।विजुअल स्टूडियो। कमांड लाइन

एक और बात जो मैं उल्लेख करना चाहता हूं। मैं वेब प्रोजेक्ट को सीधे आईआईएस में प्रकाशित करने की कोशिश नहीं कर रहा हूं। मेरे पास एक स्थान है जहां मैं कई परियोजनाओं को प्रकाशित करता हूं और फिर उन्हें तैनात करने के लिए स्वचालित रूप से एनएसआईएस बंडल में बना देता हूं।

उत्तर

22

सबसे अच्छा क्या काम करता है परियोजना फ़ाइल में निम्न लक्ष्य जोड़ने के लिए है:

<Target Name="AfterBuild"> 
    <Message Text="Copying to Deployment Dir:" /> 
    <Copy SourceFiles="@(Content)" DestinationFolder="..\XXX\%(Content.RelativeDir)" /> 
     <CreateItem Include="$(OutputPath)\*"> 
     <Output TaskParameter="Include" ItemName="Binaries"/> 
     </CreateItem> 
    <Copy SourceFiles="@(Binaries)" DestinationFolder="..\XXX\bin" /> 
</Target> 

इस तरह, जब भी परियोजना का निर्माण होता है (कमांड लाइन से या आईडीई से) यह स्वचालित रूप से निर्दिष्ट फ़ोल्डर में तैनात हो जाता है। मुझे सही दिशा में इंगित करने के लिए सभी को धन्यवाद।

+0

समस्या मैं इस के साथ किया है कि यह दोनों डिबग प्रकाशित करता है और रिलीज मोड यह नहीं करता है? यदि आपकी डीबग कॉन्फ़िगरेशन प्रकाशित हो जाती है तो इसका लाइव साइट के लिए गंभीर परिणाम हो सकते हैं। सोचें कि हमें एक सीएलआई बैच की आवश्यकता है जो करता है: 'इस प्रकाशन सेटिंग के साथ रिलीज और प्रकाशित करें'। –

+1

@RobKent आप कॉन्फ़िगरेशन फ़ाइल ट्रांसफॉर्मेशन सेट अप कर सकते हैं जिसका उपयोग आप केवल कुछ बिल्ड कॉन्फ़िगरेशन के लिए उपरोक्त व्यवहार को ट्रिगर करने के लिए कर सकते हैं। बस गूगल .net विन्यास बदलता है। –

-2

MSBuild (मेरा मानना ​​है कि जो वी.एस. साथ जहाजों) एक प्रकाशित कमांड लाइन विकल्प प्रदान करता है:

msbuild /t:publish yourproject.csproj 
+0

यह ऐसा लगता है कि अपने प्रोजेक्ट को छोड़ देता है कह रहा है: डी: \ देव \ परियोजना> एमएसबिल्ड/टी: प्रकाशित करें "Project.csproj" माइक्रोसॉफ्ट (आर) बिल्ड इंजन संस्करण 3.5.30729.4926 [माइक्रोसॉफ्ट .NET Framework, संस्करण 2.0.50727.4927] कॉपीराइट (सी) माइक्रोसॉफ्ट कॉर्पोरेशन 2007. सभी अधिकार सुरक्षित। बिल्ड 5/5/2010 10:06:58 पूर्वाह्न शुरू हुआ। परियोजना "डी: \ देव \ परियोजना \ Project.csproj" नोड 0 पर (प्रकाशित लक्ष्य (ओं))। अप्रकाशित प्रोजेक्ट छोड़ना। हो गया बिल्डिंग प्रोजेक्ट "डी: \ देव \ प्रोजेक्ट \ Project.csproj" (प्रकाशित लक्ष्य (ओं))। बिल्ड सफल हुआ। 0 चेतावनी (रों) 0 त्रुटि (रों) समय बीत 00: 00: 00.00 – sha

+0

यह केवल ClickOnce अनुप्रयोगों के लिए है – reggaeguitar

6

/टी: प्रकाशित स्विच ClickOnce अनुप्रयोगों केवल के लिए है, यह वेब परियोजनाओं के लिए लागू नहीं है। इसलिए त्रुटि यह कह रही है कि यह अप्रकाशित है। :)

+3

यह एक उत्तर नहीं है। – Gusdor

+0

@ गुस्डोर यह ओपी का जवाब था, क्योंकि मूल रूप से यह पूछा गया था कि समाधान 'अप्रकाशित' कहने में कोई त्रुटि क्यों थी। –

संबंधित मुद्दे