मैं पहले ईएफ 5 कोड में नया हूं और मैं काम पर एक परियोजना शुरू करने से पहले सबूत-अवधारणा के साथ झुका रहा हूं।ईएफ 5 कोड पहले - माइग्रेशन के साथ कॉलम प्रकार बदलना
मैं शुरू में एक मॉडल है कि
public class Person {
public int Id { get; set; }
public string FirstName { get; set;}
public string Surname {get;set;}
public string Location {get;set;}
}
की तरह कुछ देखा बनाया है और मैं एक छोटे से MVC आवेदन मैं शीर्ष पर अटक का उपयोग कर कुछ रिकॉर्ड गयी।
अब मैं एक enum करने के लिए स्थान स्तंभ बदलना चाहते हैं, कुछ की तरह:
public class Person {
public int Id { get; set; }
public string FirstName { get; set;}
public string Surname {get;set;}
public Locations Location {get;set;}
}
public enum Locations {
London = 1,
Edinburgh = 2,
Cardiff = 3
}
जब मैं नया माइग्रेशन जोड़ने मैं:
AlterColumn("dbo.People", "Location", c => c.Int(nullable: false));
लेकिन जब मैं अद्यतन-डेटाबेस मैं चलाने एक त्रुटि
Conversion failed when converting the nvarchar value 'London' to data type int.
मिल वहाँ प्रवास में एक तरह से मेज काटना है इससे पहले कि यह छद्म बयान चलाता है ?
मुझे पता है कि मैं डेटाबेस खोल सकता हूं और इसे मैन्युअल रूप से कर सकता हूं, लेकिन क्या कोई शानदार तरीका है?
मैं इसी तरह के पदों है कि वे देखें कि रूपांतरण इस पृष्ठ पर कुछ उत्तर पालन करने से पहले इकाई की रूपरेखा द्वारा स्वचालित रूप से नियंत्रित किया जाता है में डेवलपर्स के लिए सुझाव देना चाहेंगे। उदाहरण के लिए, मैंने पाया कि यह एक स्ट्रिंग और दशमलव के बीच रूपांतरण को संभालता है और फिर से मेरी मदद के बिना वापस - माइग्रेशन जो एड-माइग्रेशन जेनरेट किया गया है ठीक काम करता है। जाहिर है, उत्पादन के लिए आवेदन करने से पहले इसे स्थानीय/परीक्षण डेटाबेस पर आज़माएं! – pipedreambomb