2011-05-10 16 views
5

C:\Users\Pawel\Documents\DB.sdf numaralı dosyada veritabanım var. Buna nasıl bağlanabilirim?.sdf veritabanına bağlanmaya çalışırken istisna

Aşağıdaki basit kod çalışmıyor ve istisna oluşturuyor.

Kodu:

[WebMethod] 
public String TestCon() 
{ 
    SqlConnection sql = new System.Data.SqlClient.SqlConnection(
     @"Data Source=C:\Users\Pawel\Documents\DB.sdf"); 

    string str = "OK"; 

    try 
    { 
     sql.Open(); 
     sql.Close(); 
    } 
    catch (Exception ex) 
    { 
     str = ex.Message; 
    } 

    return str; 
} 

Sonuç:
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

ben eksik? Bağlantıyı doğru şekilde açmak için ne yapmalıyım?

DÜZENLEME:
System.NotSupportedException: SQL Server Compact is not intended for ASP.NET development.
Büyük: P

+0

SqlCompact kullanıyor musunuz? Normal SQL İstemcisi'ni kullanıyorsunuz görünüyor –

cevap

8

System.Data.SqlServerCe.SqlCeConnection kullanmayı düşünün:

System.Data.SqlServerCe.SqlCeConnection con = 
    new System.Data.SqlServerCe.SqlCeConnection(@"Data Source=C:\Users\Pawel\Documents\DB.sdf"); 

için,

Ayrıca (gerekirse System.Data.SqlServerCe başvuru ekleyin) ASP.NET ile kullanın, ekleyin:

AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true); 
+0

'System.Data' ad alanında 'SqlServerCe' türü veya ad alanı adı yok (derleme başvurusu eksik misiniz?) – Ichibann

+1

Evet, sisteme başvuru eklemeniz gerekiyor .Data.SqlServerCe derlemesi. – Larry

+0

Projenize System.Data.SqlServerCe öğesine bir başvuru eklemelisiniz. (Çözüm kaşifinde 'Referanslar'a sağ tıklayın,' Referans ekle ', gerisi kolay) – Dmitry

1

Görünüşe göre, bir SQL Compact Edition (sdf dosyası) kullanıyorsunuz. SqlConnection yerine SqlCeConnection kullanmayı denediniz mi?

Bonus olarak: Artık bağlantılar ile uğraşmak istemiyorsanız, lütfen this numaralı telefonu deneyin.

Böyle yapın, System.Data.SqlServerCe derlemesine başvuru eklemeniz gerekir.

İlgili konular