![](/img/trans.png)
[英]Cannot connect to SQL Server database from VS2019 on my ASP.Net project
[英]Trying to connect to an mdf SQLExpress database in VS2019 with a DataContext
我可以在VS2019中連接,通過Server Explorer查看數據,查詢表。
我已經包含了我的 Main 方法和來自展開的 Locals 選項卡的摘錄,其中顯示了連接字符串、數據源、數據庫和 _permissionset 值,以及任何其他看起來很重要的項目。
當我在 VS 中連接時,mdf 文件的實際位置在 C:\\Data\\ 文件夾中。 我還將所有 mdf 文件的副本也放在 C:\\Users\\Mindy 中,因為它看起來就是它認為的位置。
服務器資源管理器中數據連接顯示的數據源為:Data Source=LAPTOP-SQFOG5H5\\SQLEXPRESS;Initial Catalog=C:\\USERS\\Mindy\\LINQ_SQL_DB.MDF;Integrated Security=True
如果有人有任何建議,我將非常感謝您的幫助。
static void Main(string[] args)
{
DataContext db = new DataContext(@"C:\USERS\Mindy\LINQ_SQL_DB.mdf ");
Table<Customer> customers = db.GetTable<Customer>();
Table<Distributor> distributors = db.GetTable<Distributor>();
Table<Purchase> purchases = db.GetTable<Purchase>();
IQueryable<Customer> stateQuery = customers.Where(c => c.State == "OH");
foreach (Customer c in stateQuery)
{
Console.WriteLine("{0} {1}", c.First, c.Last);
}
}
- -ConnectionString
-"AttachDBFileName=C:\\Users\\Mindy\\LINQ_SQL_DB.mdf;Server=localhost\\sqlexpress;Integrated
Security=SSPI;User Instance=true;MultipleActiveResultSets=true"-string
- -DataSource-"localhost\\sqlexpress"-string
- -HasLocalTransaction
- '((System.Data.SqlClient.SqlConnection)db.Connection).HasLocalTransaction' threw
an exception of type 'System.InvalidOperationException'
- bool {System.InvalidOperationException}
- -HasLocalTransactionFromAPI-
- '((System.Data.SqlClient.SqlConnection)db.Connection).HasLocalTransactionFromAPI' threw an
exception of type 'System.InvalidOperationException'
- bool {System.InvalidOperationException}
- -Identity-null-object
- -InnerConnection-
- {System.Data.ProviderBase.DbConnectionClosedNeverOpened}-
- System.Data.ProviderBase.DbConnectionInternal
{System.Data.ProviderBase.DbConnectionClosedNeverOpened}
- -WorkstationId-MYCOMPUTERNAME-string
- -_connectionString-
- AttachDBFileName=C:\\Users\\Mindy\\LINQ_SQL_DB.mdf;Server=localhost\\sqlexpress;Integrated
Security=SSPI;User Instance=true;MultipleActiveResultSets=true-string
- -stateQuery-{System.Data.Linq.DataQuery<Start_LINQ_SQL.Customer>}
- System.Linq.IQueryable<Start_LINQ_SQL.Customer>
{System.Data.Linq.DataQuery<Start_LINQ_SQL.Customer>}
- -System.ComponentModel.IListSource.ContainsListCollection-FALSE-bool
- - System.Linq.IQueryable.ElementType
-{Name = "Customer" FullName = "Start_LINQ_SQL.Customer"}
-System.Type {System.RuntimeType}
- - System.Linq.IQueryable.Expression-
-{Table(Customer).Where(c => (c.State == "OH"))}
-System.Linq.Expressions.Expression {System.Linq.Expressions.MethodCallExpressionN}
- - System.Linq.IQueryable.Provider-
-{System.Data.Linq.DataQuery<Start_LINQ_SQL.Customer>}
-System.Linq.IQueryProvider {System.Data.Linq.DataQuery<Start_LINQ_SQL.Customer>}
- -cachedList-null-System.ComponentModel.IBindingList
- - context-{System.Data.Linq.DataContext}-System.Data.Linq.DataContext
- - queryExpression-
-{Table(Customer).Where(c => (c.State == "OH"))}
-System.Linq.Expressions.Expression {System.Linq.Expressions.MethodCallExpressionN}
- - Results View-Expanding the Results View will enumerate the IEnumerable-
- -Class-14-byte
- - Data-
-{System.Collections.ListDictionaryInternal}
-System.Collections.IDictionary {System.Collections.ListDictionaryInternal}
- -ErrorCode--2146232060-int
- - Errors-{System.Data.SqlClient.SqlErrorCollection}-System.Data.SqlClient.SqlErrorCollection
- -HResult--2146232060-int
- -HelpLink-null-string
- - InnerException-null-System.Exception
- -IsTransient-FALSE-bool
- -LineNumber-65536-int
- -Message-"Login failed for user 'MYCOMPUTERNAME\\Mindy'."-string
- -Number-18456-int
- -Procedure-""-string
- -RemoteStackTrace-null-string
- -Source-".Net SqlClient Data Provider"-string
- -StackTrace-
" at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32
waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection,
DbConnectionOptions userOptions, DbConnectionInternal& connection)\r\n at
- System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject,
TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal&
connection)\r\n at
- System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection,
TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal
oldConnection, DbConnectionInternal& connection)\r\n at -
- System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection
outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry,
DbConnectionOptions userOptions)\r\n at
- System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection,
DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions
userOptions)\r\n at
- System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)\r\n at
System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)\r\n at
System.Data.SqlClient.SqlConnection.Open()\r\n at
- System.Data.Linq.SqlClient.SqlConnectionManager.UseConnection(IConnectionUser user)\r\n at
System.Data.Linq.SqlClient.SqlProvider.get_IsSqlCe()\r\n at
- System.Data.Linq.SqlClient.SqlProvider.InitializeProviderMode()\r\n at
- System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression
query)\r\n at
- System.Data.Linq.DataQuery`1.System.Collections.Generic.IEnumerable<T>.GetEnumerator()\r\n at
System.Linq.SystemCore_EnumerableDebugView`1.get_Items()"-string
- -State-1-byte
- - TargetSite-
-{Boolean TryGetConnection(System.Data.Common.DbConnection, UInt32, Boolean, Boolean,
System.Data.Common.DbConnectionOptions, System.Data.ProviderBase.DbConnectionInternal
ByRef)}-System.Reflection.MethodBase {System.Reflection.RuntimeMethodInfo}
- -WatsonBuckets-null-object
- -HResult--2146232060-int
- -className-null-string
- - _data
-{System.Collections.ListDictionaryInternal}
-System.Collections.IDictionary {System.Collections.ListDictionaryInternal}
- -_doNotReconnect-FALSE-bool
- -_dynamicMethods-null-object
- - _errors-{System.Data.SqlClient.SqlErrorCollection}-System.Data.SqlClient.SqlErrorCollection
- -_exceptionMethod-null-System.Reflection.MethodBase
- -_exceptionMethodString-null-string
- -_helpURL-null-string
- - _innerException-null-System.Exception
- -_message-"Login failed for user 'MYCOMPUTERNAME\\Mindy'."-string
初始化 Datacontext 時,您希望提供完整的 connectionString。 嘗試更換:
DataContext db = new DataContext(@"C:\USERS\Mindy\LINQ_SQL_DB.mdf ");
和:
DataContext db = new DataContext(@"Data Source=LAPTOP-SQFOG5H5\SQLEXPRESS;Initial Catalog=C:\USERS\Mindy\LINQ_SQL_DB.MDF;Integrated Security=True");
“用戶‘MYCOMPUTERNAME\\Mindy’登錄失敗”可能意味着登錄/憑據問題。 請參閱我對https://stackoverflow.com/a/63964079/2468348 的回答
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.