ऊपर @ वेंस के काम के कंसोल ऐप का उपयोग करते हुए, मैंने निम्नलिखित को एक फर्स्टबिल्ड इवेंट के रूप में इस्तेमाल किया
<Target Name="BeforeBuild">
<!--Check out BD.edmx, Another.edmx, all configs-->
<Exec Command="$(SolutionDir)\Library\tf checkout /lock:none $(ProjectDir)Generation\DB.edmx" />
<Exec Command="$(SolutionDir)\Library\tf checkout /lock:none $(ProjectDir)Generation\Another.edmx" />
<!--Set to 2008 for Dev-->
<Exec Condition=" '$(Configuration)' == 'DEV1' " Command="$(SolutionDir)Library\SetEdmxSqlVersion $(ProjectDir)Generation\DB.edmx 2008" />
<Exec Condition=" '$(Configuration)' == 'DEV1' " Command="$(SolutionDir)Library\SetEdmxSqlVersion $(ProjectDir)Generation\Another.edmx 2008" />
<Exec Condition=" '$(Configuration)' == 'DEV2' " Command="$(SolutionDir)Library\SetEdmxSqlVersion $(ProjectDir)Generation\DB.edmx 2008" />
<Exec Condition=" '$(Configuration)' == 'DEV2' " Command="$(SolutionDir)Library\SetEdmxSqlVersion $(ProjectDir)Generation\Another.edmx 2008" />
<!--Set to 2005 for Deployments-->
<Exec Condition=" '$(Configuration)' == 'TEST' " Command="$(SolutionDir)Library\SetEdmxSqlVersion $(ProjectDir)Generation\DB.edmx 2005" />
<Exec Condition=" '$(Configuration)' == 'TEST' " Command="$(SolutionDir)Library\SetEdmxSqlVersion $(ProjectDir)Generation\Another.edmx 2005" />
<Exec Condition=" '$(Configuration)' == 'PRODUCTION' " Command="$(SolutionDir)Library\SetEdmxSqlVersion $(ProjectDir)Generation\DB.edmx 2005" />
<Exec Condition=" '$(Configuration)' == 'PRODUCTION' " Command="$(SolutionDir)Library\SetEdmxSqlVersion $(ProjectDir)Generation\Another.edmx 2005" />
</Target>
यह सुपर आसान है, क्योंकि कष्टप्रद पुनर्वसन से बचा जाता है। Vance साझा करने के लिए धन्यवाद।
मैंने TF.exe को लाइब्रेरी सॉल्यूशन फोल्डर में जोड़ दिया है और यह मदद करता है, क्योंकि मैं अब उन्हें बनाने की कोशिश करने से पहले edmx फ़ाइलों की जांच कर सकता हूं, बिल्ड के हिस्से के रूप में। इसके अलावा, मैंने इसे शर्तों के साथ जोड़ दिया है, ताकि यह सर्वर पर तैनाती के लिए 2005 और देव मशीन sln कॉन्फ़िगरेशन के लिए 2008 तक वापस सेट हो जाए। इसके अलावा आपको लाइब्रेरी फ़ोल्डर में वास्तविक SetEdmxSqlVersion.exe (और .pdb) फ़ाइल (या जहाँ भी आप इन बिट्स रखना चाहते हैं) को जोड़ने की आवश्यकता है।
बहुत बहुत धन्यवाद @Vance वास्तव में साफ, बड़े पैमाने पर समय बचाने और मेरे बनाता है पूरी तरह से स्वचालित और दर्द मुक्त :)