簡體   English   中英

Windows服務和實體框架

[英]Windows service and Entity Framework

我有一個包含三個項目的解決方案:一個Web應用程序,用於創建代碼優先數據庫的數據訪問層和一個我(希望)用於同步數據庫中某些數據的Windows服務。 我還引用了其他兩個項目中的數據層。 我在Web應用程序配置和服務配置中使用相同的連接字符串。 一切都適用於Web應用程序,但是當我訪問數據上下文時,所有表都是空的(枚舉沒有產生任何結果)。 我沒有錯。 所以我的問題是我錯過了一些明顯的東西嗎?

    <add name="DataContext" connectionString="Data Source=(localdb)\MSSQLLocalDB; Database=Purple Moose; Integrated Security=True; User Id=purplemoose; Password=password; MultipleActiveResultSets=True;" providerName="System.Data.SqlClient" />

您的連接字符串使用當前的Windows用戶登錄您的數據庫。 您指定集成安全性(也稱為Windows用戶) 用戶名/密碼。

在這種情況下:

Windows身份驗證優先於SQL Server登錄。 如果同時指定Integrated Security = true以及用戶名和密碼,則將忽略用戶名和密碼,並將使用Windows身份驗證。

因此,您將始終使用當前的Windows用戶進入您的數據庫,這可能是Local System或類似的服務。 無論哪種方式,因為您需要用戶名/密碼身份驗證,請刪除 Integrated Security=true或將其設置為false。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM