0

我正在使用 ASP.NET 4.0 开发一个 Web 应用程序。我有一个数据库 SQL Server 2005,我正在使用 Entity Framework 5 连接到它。

public class ArchivioClienti : DbContext
{
    public ArchivioClienti()
        : base("ICAMConnection")
    {
    }

    public DbSet<ClientiProspect> clienti { get; set; }
}        
[Table("pvw_clienti_prospect")]
public class ClientiProspect
{
    [Key]
    public string tipologia { get; set; } 
    public string cod_ppro { get; set; }
    public string rag_soc { get; set; }
    public string indirizzo { get; set; }
    public string cap { get; set; }
    public string citta { get; set; }
    public string prov { get; set; }
    public string nazione { get; set; }
    public string telefono { get; set; }
    public string fax { get; set; }
    public string part_iva { get; set; }
    public string cod_fisc { get; set; }
    public string note { get; set; }
    public string e_mail { get; set; }
    public string cod_ppro_anag { get; set; }
    public string cod_vage { get; set; }
    public string cod_visp { get; set; }
    public string fonte { get; set; }
    public string cod_vzon { get; set; }
    public decimal perc_provv { get; set; }
    public string flag_stato { get; set; }
    public string cod_anag { get; set; }
    public string gg_chiusura { get; set; }
    public DateTime? data_ins { get; set; }
    public string cod_canale { get; set; }

}

我正在尝试从表中获取数据。这不是一个真正的表格,而只是一个视图。当我使用 LINQ 加载查询时,

var result = from u in dbClienti.clienti
             select u;

return result.ToList()

我收到了正确数量的结果(与我在 SQL Server Management Studio 中使用相同查询收到的结果相同),但字段错误:第一个被复制了多次,第二个相同,等等。

为什么它以这种方式工作?具有数据库视图的实体框架是否存在任何问题?

4

1 回答 1

0

我假设您的视图已正确配置并在实体框架之外执行时返回正确的结果?

在实体框架中使用视图而不是表没有问题。我将运行 SQL Profiler 并查看执行查询时 EF 正在做什么。

于 2013-02-08T11:24:19.293 回答