我已经在堆栈溢出和网络上找到了关于这个主题的大量信息,但似乎没有任何帮助。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;
using System.ComponentModel.DataAnnotations;
namespace GeoCode.Models
{
public class address
{
[Key]
public int ARENA_ID { get; set; }
public string ADDRESS1 { get; set; }
public string CITY { get; set; }
public string ZIP { get; set; }
public decimal COUNTRY { get; set; }
}
public class latlng
{
[Key]
public int ARENA_ID { get; set; }
public string LAT { get; set; }
public string LNG { get; set; }
}
public class GeoCodeDBContext : DbContext
{
public DbSet<address> WEB_ARENA { get; set; }
public DbSet<latlng> WEB_ARENA_GEO { get; set; }
}
}
当我使用此模型使用实体框架创建具有读/写操作和视图的类时,我收到错误,&#34;无法找到请求的.net框架数据提供程序。它可能没有安装。&#34;
我的连接字符串是:
<add name="GeoCodeDBContext"
connectionString="server=********;database=*****;uid=*****;pwd=******"
providerName="System.Data.SqlServer"/>
答案 0 :(得分:2)
提供商providerName="System.Data.SqlServer"
不存在。它应该是providerName="System.Data.SqlClient"
。
请参阅ProviderName
上的文档。可能很高兴知道System.Data.SqlClient
实际上是默认值,因此您甚至不需要为providerName
提供值。
答案 1 :(得分:1)
您在连接字符串中指定了错误的提供程序。 System.Data.SqlServer
不是提供者。试试这个:
<add name="GeoCodeDBContext"
connectionString="..."
providerName="System.Data.SqlClient"/>