Я разработал приложение WPF, которое я хочу запускать в качестве службы Windows.поэтому я добавил в решение MSEdge.Service и попытался добавить код и функциональность приложения WPF.У меня есть решение, которое имеет несколько проектов, как показано ниже MSEdge.DB, MSEdge.Monitor, MSEdge.Service, MSEdge.UI
Я вызвал метод getAll_list () в MSEdge.service из MSEdge.DB, но я не могучтобы получить данные из кода DB
// в ScanManager
namespace MSEdge.DB.Data
{
public class ScanManager : IPersistenceManager<Scan>
{
private static readonly Logger Logger = LogManager.GetLogger(typeof(ScanManager).Name);
public IList<Scan> GetAll()
{
//Logger.Debug("GetAll() started...");
Scans = new List<Scan>();
using (var ctx = new MSDataContext())
{
try
{
foreach (var i in ctx.Scans) //Error Occurs here
{
}
}
}
}
}
}
//code in Service1
public void ExecuteOnlineStatus()
{
ScanManager scanManager = new ScanManager();// using MSEdge.DB.Data;
var scans = scanManager.GetAll();
//not found any scan in list
foreach (var ex in scans)
{
if (ex.Status != (null))
{//
}
}
}
, когда я запускаю приложение UI WPF, оно запускается Ok.но когда я запускаю службы, я получаю ошибку , как показано ниже.
Ошибки: SQL = Для оценки функции требуются все потоки.Не найден поставщик Entity Framework для поставщика ADO.NET с инвариантным именем System.Data.SqlClient.Убедитесь, что поставщик зарегистрирован в разделе «entityFramework» файла конфигурации приложения.