2012-03-28 16 views
7

जब मैं पैकेज प्रबंधक कंसोल के माध्यम से डेटाबेस बनाने के लिए माइग्रेशन चलाता हूं। क्या बीज विधि से NuGet कंसोल में पाठ आउटपुट करने का कोई तरीका है?ईएफ माइग्रेशन, आउटपुट टेक्स्ट टू न्यूज कंसोल

बस सरल बनाने के आदेश:

Update-Database -StartupProjectName "Data" -Verbose 

उत्तर

2

मुझे नहीं लगता कि आप इसे सीधे उत्पादन कर सकते हैं, लेकिन आप का पता लगाने और डिबग आदेशों का उपयोग और वी.एस. का एक और उदाहरण संलग्न कर सकते हैं उत्पादन को देखने के लिए।

इस सवाल से लिया: अपने कंसोल माइग्रेशन के लिए एसक्यूएल कोड में Where can I find the console or debug output from code executed in the package manager window?

1

आदेश

Update-Database -Verbose 

प्रिंट, लेकिन एक और तरीका है:

Update-Database -Script 

है कि एक और खोलने एसक्यूएल कोड के साथ विजुअल स्टूडियो में फ़ाइल करें।

माइग्रेशन के एसक्यूएल कोड प्राप्त करने का एकमात्र तरीका है। आप डीबग में माइग्रेशन का एसक्यूएल कोड नहीं प्राप्त कर सकते क्योंकि माइग्रेशन पावर खोल की तरह चलता है, और क्योंकि यह प्रोजेक्ट नहीं चलाता है।

संपादन:

आप स्थानांतरण में करने के लिए नहीं जा सकते हैं या debbug कर सकते हैं क्योंकि एक शक्ति शेल कमांड की तरह पलायन रन।

आप आप प्रत्येक व्यक्ति के प्रवास के Up() या Down() तरीकों के भीतर एक एसक्यूएल प्रिंट कमांड निष्पादित कर सकते हैं entityframework.codeplex.com

+0

यह एसक्यूएल कोड वापस करेगा, लेकिन आउटपुट नहीं है कि बीज विधि – amhed

+0

@ एमेड के अंदर क्या होता है, मैं इसके बारे में बात करता हूं: आप डीबग नहीं कर सकते क्योंकि यह पावर खोल में है, क्या आप इस विधि में नहीं जा सकते हैं। यदि आप एंटीटी फ्रेमवर्क का स्रोत कोड प्राप्त करते हैं, तो आप विधि को पढ़ सकते हैं, क्योंकि माइग्रेशन पावर खोल की तरह चलते हैं और अन्य प्रोजेक्ट में हैं, न कि आंतरिकता फ्रेमवर्क में – MayogaX

2

में इकाई की रूपरेखा> माइग्रेशन स्रोत कोड प्राप्त करने के कर सकते हैं।

base.Sql("PRINT 'I heart kittens';"); 

हो जाएगा ताकि उत्पादन पर प्रकाश डाला पीला पाठ में पैकेज प्रबंधक कंसोल विंडो पर 'मैं दिल बिल्ली के बच्चे' 'अपडेट- डेटाबेस' की प्रक्रिया के दौरान।

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