6

को numer 1 कहते हैं मैं इस दो entityesइकाई की रूपरेखा अमान्य स्तंभ का नाम, एफई प्राथमिक कुंजी

public partial class Suscriptores 
{ 
    public Suscriptores() 
    { 
     this.Publicacion = new HashSet<Publicacion>(); 
    } 

    [Key] 
    public int IdSuscriptor { get; set; } 
    public string LogoSuscriptor { get; set; } 
    public string Identificacion { get; set; } 
    public string Nombre { get; set; } 
    public string Direccion { get; set; } 
    public string Telefono { get; set; } 
    public string Email { get; set; } 
    public string Fax { get; set; } 
    public string Home { get; set; } 

    public virtual ICollection<Publicacion> Publicacion { get; set; } 
} 


public partial class Publicacion 
{ 
    public Publicacion() 
    { 
     this.Edictos = new HashSet<Edictos>(); 
    } 

    [Key] 
    public decimal IdPublicacion { get; set; } 
    public System.DateTime FechaPublicacion { get; set; } 
    public string IdUsuario { get; set; } 
    public System.DateTime FechaPublicacionHasta { get; set; } 
    public System.DateTime FechaArchivoHasta { get; set; } 
    public int IdSuscriptor { get; set; } 
    public decimal IdTipoPublicacion { get; set; } 

    [ForeignKey("IdSuscriptor")] 
    public virtual Suscriptores Suscriptores { get; set; } 
} 

जब कोशिश इस क्वेरी चलाने के लिए है:

:

public ActionResult DetailsVSTO(string Identificacion) 
    { 
     var SusQ = from s in db.Suscriptores 
        where s.Identificacion == Identificacion 
        select s; 

     return Json(SusQ.First(), JsonRequestBehavior.AllowGet); 
    } 

यह इस संदेश को फेंक

System.Data.SqlClient.SqlException: अमान्य कॉलम नाम 'Suscriptores_IdSuscriptor1'

ऐसा करने का प्रयास lve इस समस्या को मैं DBCOntext

 modelBuilder.Entity<Suscriptores>() 
      .HasMany(x => x.Publicacion) 
      .WithRequired(x => x.Suscriptores) 
      .Map(a => a.MapKey("IdSuscriptor")); 

पर इस धाराप्रवाह जोड़ने लेकिन समस्या जारी रहती है। मैं इसे हल करने के लिए कैसे कर सकता हूं।

+2

बस उत्सुक है, यह एक बहुत-tomany संघ नहीं होना चाहिए? मैं कुछ जानते हुए भी कि मैं केवल एक ग्राहक :) 3 +1 आज गर्ट के बारे में –

+0

thats प्राप्त कर सकते हैं प्रकाशित करने के लिए नहीं करना चाहते हैं। मैं के लिए अपने "टिप्पणी" आपकी पोस्ट :-) –

+0

Tks गर्ट पसंद है, वास्तव में मैं एफई के साथ नए हूँ, इसके साथ बस कुछ छोटा सा अनुभव।प्रत्येक '' सबस्क्राइटर 'और' 'सबस्क्राइटर' 'के लिए' 'पब्लिकेशियंस' 'के लिए कई' 'पब्लिकेशियोन' 'हैं, जो मैं मॉडल बनाना चाहता हूं। –

उत्तर

4

के रूप में अच्छी तरह से एक बहुत-से-एक मानचित्रण जोड़ने का प्रयास करें। कृपया शुद्ध फ़्लुएंट एपीआई का उपयोग करें, और आपको [विदेशीकी] एनोटेशन को हटा देना चाहिए।

modelBuilder.Entity<Publicacion>() 
      .HasRequired(x => x.Suscriptores) 
      .WithMany(x => x.Publicacion); 
+0

टीक्स, मैं अब कोशिश कर रहा हूं –

+0

कोई प्रतिक्रिया जुआन? –

7

मुझे यह त्रुटि गैर-विदेशी कुंजी कॉलम के संबंध में मिली और त्रुटि को समझने की कोशिश करने में बहुत अधिक समय बर्बाद हो गया। यह मेरे कोड में था, ईएफ या डेटाबेस में नहीं। मैं बस सोचा कि मैं

this.Property(t => t.Revision).HasColumnName("Revision"); 
this.Property(t => t.DistributionClass).HasColumnName("DistributionClass"); 

टाइप किया था लेकिन क्या मैं लिखा हो

this.Property(t => t.Revision).HasColumnName("Revision"); 
this.Property(t => t.Revision).HasColumnName("DistributionClass"); 

था मुझे लगता है मैं ऊपर लाइन देख रहा था और t.DistributionClass के बजाय t.Revision डाल दिया। और इससे कोई फर्क नहीं पड़ता कि मैंने इसे कब तक देखा, मैं अपनी गलती नहीं देख सका। किसी भी भाग्य के साथ यह कुछ और गरीब आत्मा को कुछ समय बचाएगा।

2

मैं एक ऐसी ही समस्या है जहाँ मैं नंबर एक फ़ील्ड नाम के साथ जोड़ दिया जा रहा है के साथ एक आंतरिक अपवाद हो रही थी थी। पता लगाने के लिए आओ, यह था, क्योंकि मैं नकल की थी और चिपकाया और प्रॉपर्टी का नाम बदलने के लिए भूल गए। उदाहरण के लिए:

Property(x => x.SomeProperty).HasColumnName("SomeProperty").IsOptional(); 
Property(x => x.SomeProperty).HasColumnName("SomeOtherProperty").IsOptional(); 

सूचना मैं उद्धरण में स्तंभ नाम बदल दिया था, लेकिन मैंने ग़लती से अपने लैम्ब्डा में एक ही प्रॉपर्टी छोड़ दिया था। यह मुझे थोड़ा सा है। उम्मीद है कि यह मदद करेगा।

Property(x => x.SomeProperty).HasColumnName("SomeProperty").IsOptional(); 
Property(x => x.SomeOtherProperty).HasColumnName("SomeOtherProperty").IsOptional(); 

इससे समस्या ठीक हुई।

0

मैं एक संपत्ति (स्तंभ) मैं सिर्फ जोड़ा था पर मेरी आइटम तालिका में इस मुद्दे था, और कैसे निराशा!

बाहर कर देता है मैं आदेश के लिए डेटा मॉडल में एक सूची संपत्ति थी, और क्योंकि मुझे लगता है कि विन्यास में इसे अनदेखा नहीं लगा कि यह आइटम तालिका में यह एक ही मुद्दा हो सकता है। यह सिवाय इसके कि दोनों तालिकाओं एक ही नाम के एक संपत्ति था हुआ होता नहीं किया है, इसलिए मैं इस ... जो मैं वैसे भी किया जाना चाहिए करना था।

public OrderConfiguration() { Ignore(p => p.Items); }