2017-01-07 8 views
6

इकाई फ्रेमवर्क 6 में मैं माइग्रेशन लागू करने के लिए अद्यतन-डेटाबेस कमांड का उपयोग कर रहा हूं। मैं तीन वातावरण है कि मैं हथकंडा (देव, गुणवत्ता आश्वासन और उत्पादन) मिल गया है, औरइकाई फ्रेमवर्क में लंबित माइग्रेशन की जांच करें?

Update-Database -ConnectionStringName DEV 

का उपयोग कर उन्हें अपग्रेड लेकिन, अब मुझे पता है कि जो प्रवासन मेरी ठेस पर्यावरण पर है चाहते हैं, और जो माइग्रेशन हो willl अगर मैं अद्यतन-डेटाबेस कॉल करता हूं तो लागू होता है।

क्या यह जांचने के लिए कोई आदेश है कि कौन सा माइग्रेशन नवीनतम है, और यदि मैं अद्यतन-डेटाबेस चलाता हूं तो कौन सा लागू होगा?

Get-Migrations -ConnectionStringName PROD 

तुम भी सही डेटाबेस में तालिका __MigrationsHistory की सामग्री की जाँच कर सकते हैं:

उत्तर

10

जो माइग्रेशन डेटाबेस के लिए लागू किया गया है आदेश Get-Migrations का उपयोग देखने के लिए। इसमें डेटाबेस पर लागू सभी माइग्रेशन के बारे में जानकारी शामिल है।

अगला माइग्रेशन लागू आपके प्रोजेक्ट में मौजूदा माइग्रेशन फ़ाइलों पर निर्भर करता है। माइग्रेशन फ़ाइल नाम में एक उपसर्ग शामिल होता है जो टाइमस्टैम्प होता है, जो उस समय को निर्दिष्ट करता है जब माइग्रेशन फ़ाइल जेनरेट की गई थी (जब तक आप -force पैरामीटर का उपयोग नहीं करते हैं जो मौजूदा माइग्रेशन फ़ाइल को मौजूदा टाइमस्टैम्प स्ट्रिंग को रखने का कारण बन सकता है)। माइग्रेशन उस टाइमस्टैम्प के अनुसार लागू होते हैं। इसलिए आपकी माइग्रेशन फाइलों का वर्णमाला क्रम उस क्रम को इंगित करता है जिसमें वे लागू होते हैं।

-Script पैरामीटर के साथ Update-Database चलाने के लिए एक सुरक्षित तरीका है, जो माइग्रेशन के लिए SQL स्क्रिप्ट उत्पन्न करता है लेकिन इसे चलाता नहीं है। तो यदि आप वास्तविक Update-Database चलाते हैं तो आप देख सकते हैं कि कौन सा माइग्रेशन लागू किया जाएगा।

+0

धन्यवाद, अपडेट-डाटाबेस -स्क्रिप्ट ठीक वैसे ही लगता है जो मैं ढूंढ रहा हूं। –

+0

आपका स्वागत है! – Diana

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