Silverlight 4.0 System.Data.EntityClient未被代码识别,但被web.config识别

Silverlight 4.0 System.Data.EntityClient未被代码识别,但被web.config识别,silverlight-4.0,entity-framework-4,connection-string,Silverlight 4.0,Entity Framework 4,Connection String,当我简单地运行这个项目时,数据是从服务器获取的,没有问题,但是需要在代码中包含连接字符串 根据网上的资料,我做了以下几点,但就是不能解决这个错误 错误 在配置中找不到指定的存储提供程序,或者该提供程序无效 域名服务 公共类域服务1:LinqToEntitiesDomainService { 公共覆盖无效初始化(DomainServiceContext上下文) { EntityConnectionStringBuilder=新的EntityConnectionStringBuilder(); bu

当我简单地运行这个项目时,数据是从服务器获取的,没有问题,但是需要在代码中包含连接字符串

根据网上的资料,我做了以下几点,但就是不能解决这个错误

错误

在配置中找不到指定的存储提供程序,或者该提供程序无效

域名服务
公共类域服务1:LinqToEntitiesDomainService
{
公共覆盖无效初始化(DomainServiceContext上下文)
{
EntityConnectionStringBuilder=新的EntityConnectionStringBuilder();
builder.Provider=“System.Data.EntityClient”;
builder.ProviderConnectionString=@“数据源=A-63A9D4D7E7834\THIRD;初始目录=EMPLOYEE;集成安全性=True;”;
builder.Metadata=string.Format(@“res://*/{0}.csdl)|
res://*/{0}.ssdl|
res://*/{0}.msl,“Model1”);
this.ObjectContext.Connection.ConnectionString=builder.ConnectionString;
初始化(上下文);
}
web.config

由于“System.Data.EntityClient”是许多名称空间/lib的组合,因此无法识别

正确的方法是

public IQueryable<Table1> GetTable1()
{



    // Specify the provider name, server and database.
    string providerName = "System.Data.SqlClient";
    string serverName = @"A-63A9D4D7E7834\THIRD";
    string databaseName = "EMPLOYEE";

    // Initialize the connection string builder for the
    // underlying provider.
    SqlConnectionStringBuilder sqlBuilder =
        new SqlConnectionStringBuilder();

    // Set the properties for the data source.
    sqlBuilder.DataSource = serverName;
    sqlBuilder.InitialCatalog = databaseName;
    sqlBuilder.IntegratedSecurity = true;
    sqlBuilder.MultipleActiveResultSets=True;

    // Build the SqlConnection connection string.
    string providerString = sqlBuilder.ToString();

    // Initialize the EntityConnectionStringBuilder.
    EntityConnectionStringBuilder entityBuilder =
        new EntityConnectionStringBuilder();

    //Set the provider name.
    entityBuilder.Provider = providerName;

    // Set the provider-specific connection string.
    entityBuilder.ProviderConnectionString = providerString;


    // <add name="EMPLOYEEEntities" connectionString="metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=A-63A9D4D7E7834\THIRD;Initial Catalog=EMPLOYEE;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />



    // Set the Metadata location.
    entityBuilder.Metadata = @"res://*/Models.Model1.csdl|
                    res://*/Models.Model1.ssdl|
                    res://*/Models.Model1.msl";
    Console.WriteLine(entityBuilder.ToString());

   // EntityConnection conn =                 new EntityConnection(entityBuilder.ToString());
    /*
    using (EntityConnection conn =
        new EntityConnection(entityBuilder.ToString()))
    {
        conn.Open();
        Response.Write("this is a web application");
        Console.WriteLine("Just testing the connection.");
        conn.Close();
    }*/

    this.ObjectContext.Connection.ConnectionString = entityBuilder.ToString();
   // this.ObjectContext.Connection.Open();
  // this.ObjectContext.Connection.BeginTransaction();

   //  this.ObjectContext.Table1.OrderBy(q => q.ID);

    IQueryable<Table1> results = this.ObjectContext.Table1.OrderBy(q => q.ID);

  //  this.ObjectContext.Connection.Close();

    return results;
}
public IQueryable GetTable1()
{
//指定提供程序名称、服务器和数据库。
string providerName=“System.Data.SqlClient”;
字符串serverName=@“A-63A9D4D7E7834\THIRD”;
字符串databaseName=“EMPLOYEE”;
//初始化的连接字符串生成器
//基础提供者。
SqlConnectionStringBuilder sqlBuilder=
新的SqlConnectionStringBuilder();
//设置数据源的属性。
sqlBuilder.DataSource=serverName;
sqlBuilder.InitialCatalog=数据库名称;
sqlBuilder.IntegratedSecurity=true;
sqlBuilder.MultipleActiveResultSets=True;
//构建SqlConnection字符串。
string providerString=sqlBuilder.ToString();
//初始化EntityConnectionStringBuilder。
EntityConnectionStringBuilder entityBuilder=
新EntityConnectionStringBuilder();
//设置提供程序名称。
entityBuilder.Provider=providerName;
//设置特定于提供程序的连接字符串。
entityBuilder.ProviderConnectionString=providerString;
// 
//设置元数据位置。
entityBuilder.Metadata=@“res://*/Models.Model1.csdl|
res://*/Models.Model1.ssdl|
res://*/Models.Model1.msl”;
Console.WriteLine(entityBuilder.ToString());
//EntityConnection conn=新的EntityConnection(entityBuilder.ToString());
/*
使用(实体连接接头)=
新的EntityConnection(entityBuilder.ToString())
{
conn.Open();
Write(“这是一个web应用程序”);
WriteLine(“只是测试连接”);
康涅狄格州关闭();
}*/
this.ObjectContext.Connection.ConnectionString=entityBuilder.ToString();
//this.ObjectContext.Connection.Open();
//this.ObjectContext.Connection.BeginTransaction();
//this.ObjectContext.Table1.OrderBy(q=>q.ID);
IQueryable results=this.ObjectContext.Table1.OrderBy(q=>q.ID);
//this.ObjectContext.Connection.Close();
返回结果;
}
<connectionStrings>
    <add name="EMPLOYEEEntities"
         connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=A-63A9D4D7E7834\THIRD;Initial Catalog=EMPLOYEE;Integrated Security=True;MultipleActiveResultSets=True&quot;" 
         providerName="System.Data.EntityClient" />
  </connectionStrings>
  
public IQueryable<Table1> GetTable1()
{



    // Specify the provider name, server and database.
    string providerName = "System.Data.SqlClient";
    string serverName = @"A-63A9D4D7E7834\THIRD";
    string databaseName = "EMPLOYEE";

    // Initialize the connection string builder for the
    // underlying provider.
    SqlConnectionStringBuilder sqlBuilder =
        new SqlConnectionStringBuilder();

    // Set the properties for the data source.
    sqlBuilder.DataSource = serverName;
    sqlBuilder.InitialCatalog = databaseName;
    sqlBuilder.IntegratedSecurity = true;
    sqlBuilder.MultipleActiveResultSets=True;

    // Build the SqlConnection connection string.
    string providerString = sqlBuilder.ToString();

    // Initialize the EntityConnectionStringBuilder.
    EntityConnectionStringBuilder entityBuilder =
        new EntityConnectionStringBuilder();

    //Set the provider name.
    entityBuilder.Provider = providerName;

    // Set the provider-specific connection string.
    entityBuilder.ProviderConnectionString = providerString;


    // <add name="EMPLOYEEEntities" connectionString="metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=A-63A9D4D7E7834\THIRD;Initial Catalog=EMPLOYEE;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />



    // Set the Metadata location.
    entityBuilder.Metadata = @"res://*/Models.Model1.csdl|
                    res://*/Models.Model1.ssdl|
                    res://*/Models.Model1.msl";
    Console.WriteLine(entityBuilder.ToString());

   // EntityConnection conn =                 new EntityConnection(entityBuilder.ToString());
    /*
    using (EntityConnection conn =
        new EntityConnection(entityBuilder.ToString()))
    {
        conn.Open();
        Response.Write("this is a web application");
        Console.WriteLine("Just testing the connection.");
        conn.Close();
    }*/

    this.ObjectContext.Connection.ConnectionString = entityBuilder.ToString();
   // this.ObjectContext.Connection.Open();
  // this.ObjectContext.Connection.BeginTransaction();

   //  this.ObjectContext.Table1.OrderBy(q => q.ID);

    IQueryable<Table1> results = this.ObjectContext.Table1.OrderBy(q => q.ID);

  //  this.ObjectContext.Connection.Close();

    return results;
}