2012-07-02 11 views
10

मैं MVC 4 करने के लिए मेरे MVC 3 परियोजना को स्थानांतरित करने के कोशिश कर रहा था लेकिन जब मैं इस मॉडल जाना चाहते थे:क्यों `DatabaseGenerated (DatabaseGeneratedOption.Identity)` MVC में काम नहीं करता 4

public class Link 
{ 
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)] 
    public Guid ID { get; set; } 

    [DisplayName("Shorted URL")] 
    public string SURL { get; set; } 

    [DisplayName("General Link")] 
    public string OriginalURL { get; set; } 

    [DisplayName("Click Count")] 
    public int ClickCount { get; set; } 
} 

public class LinkDBContext : DbContext 
{ 
    public DbSet<Link> Links { get; set; } 
} 

मैं त्रुटि मिली [System.ComponentModel.DataAnnotations.(DatabaseGeneratedOption.Identity)] विशेषता के साथ। मुझे नहीं पता कि समस्या क्या है। क्या कोई जानता है?!?

प्रकार या नाम स्थान का नाम 'DatabaseGeneratedAttribute' नहीं किया जा सका पाया (आप एक का उपयोग कर के निर्देश या एक विधानसभा संदर्भ याद कर रहे हैं?)

:

अद्यतन

इन त्रुटियों कर रहे हैं

टाइप या नेमस्पेस नाम 'डेटाबेस जेनरेटेड' नहीं मिला ( क्या आप एक प्रयोग निर्देश या असेंबली संदर्भ खो रहे हैं?)

+5

पहले, अपने समस्या MVC से संबंधित नहीं है (या तो 3 या 4), क्योंकि आपका कोड एंटिटी फ्रेमवर्क से निपट रहा है। दूसरा, आप यह नहीं कहते कि आप किस ईएफ का उपयोग कर रहे हैं, और आप यह नहीं कहते कि आपको कौन सी त्रुटि मिली है। चूंकि मेरी मानसिक शक्तियां आज काम नहीं कर रही हैं, इसलिए आपको अधिक विशिष्ट होने की कोशिश करनी होगी। –

+0

@MystereMan मैंने अभी VS2012 का उपयोग करके एक इंटरनेट एप्लिकेशन बनाया है और इसमें स्वयं ईएफ है। मुझे नहीं पता कि संस्करण क्या है! –

+1

यदि आप इस प्रश्न में वास्तविक त्रुटि संदेश शामिल कर सकते हैं जो सहायक होगा। – Satish

उत्तर

24

DatabaseGeneratedAttribute System.ComponentModel.DataAnnotations.Schema नाम स्थान में है में विशेषता .NET 4.5

+0

एफडब्ल्यूआई: आपको अपने प्रोजेक्ट – cpoDesign

+0

में संदर्भित System.ComponentModel.DataAnnotations की आवश्यकता है, मुझे भी thanx – sibonile

2

आप .net 4 में इस विशेषता का उपयोग करने के लिए आप EntityFramework 6 के प्री-रिलीज़ संस्करण का उपयोग कर सकते हैं (या यहां तक ​​कि रात बनाता है) यह करने के लिए चाहते हैं, Manage NuGet Pakages विंडो में, विंडो के शीर्ष पर स्थित ड्रॉप-डाउन से, Include Prerelease चुनें। रात बनाता करने के लिए

को अद्यतन करने के Pakage Manager Settings में इस पैकेज स्रोत जोड़ें:

http://www.myget.org/F/aspnetwebstacknightly/ 

एक पूरा गाइड के लिए, EF on GitHub देखते हैं।

1

आप की जरूरत है - कुछ मामलों में - 4.5 या 4.5.1 करने के लिए कम से ढांचे को बदलने और उसके बाद इकाई की रूपरेखा स्थापित करने के लिए 6 + और यह मिल जाएगा

+0

धन्यवाद! यह मेरे लिए काम करता था, हालांकि मुझे ईएफ 6 स्थापित करने की आवश्यकता नहीं थी क्योंकि मेरे पास पहले से ही मेरी परियोजना में ईएफ का संस्करण था। – mkimmet

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