我在尝试从SQL服务器数据库获取模型的属性时遇到问题。我已经在我的模型上定义了属性,但是当我执行Linq查询时,它不会让我获得该属性。
这是我的模特:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Web.Mvc;
namespace ProgramaAlimenticio.Models
{
public class RutaMD
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public virtual int pk_ruta { get; set; }
[Display(Name = "Ruta")]
public virtual string nombre { get; set; }
[Display(Name = "Proveedor")]
public virtual Nullable<int> fk_proveedor { get; set; }
[Display(Name = "Programa")]
public virtual int fk_programa { get; set; }
}
[MetadataType(typeof(RutaMD))]
public partial class Ruta { }
}
不可用的属性是fk_programa。
当我进行下一个查询时,问题就出现了:
var programas = from r in db.Ruta
join p in db.Programa on r.fk_programa equals p.pk_programa
into o
select o;
答案 0 :(得分:0)
假设db.Ruta
中有Ruta
项,而不是RutaMD
项,那么您的Ruta
类似乎没有fk_programa
属性在它上面。
[MetadataType(typeof(RutaMD))]
public partial class Ruta { }
也许这个属性应该在部分类的另一半中:你是否仔细检查过它实际上在那里?它是公开的吗?那个名字是一样的吗?它有get
之三? get
之处是公开的吗?