c# - Calling EF Code First from Windows Service -


i'm trying simple select system in onstart() event of windows service.but introduce code talks database onstart() event following error:

an exception occurred while initializing database. see innerexception details. underlying provider failed on open.

c# code:

protected override void onstart(string[] args) {     try     {         string servername = getservername();         string serverip = getserverip();          //this line causes exception         var dbcontext = new databasecontext();          bool serverexists = dbcontext.server.any(s => s.servername == servername && s.serverip == serverip);          if (!serverexists)         {             //add server details db         }     }     catch (exception ex)     {         using (var w = new streamwriter("c:\\errorfile.txt", true))         {             w.writeline(datetime.now.tostring("dd mm yyyy hh:mm:ss"));             w.writeline(ex.message);             if (ex.innerexception != null)                 w.writeline(ex.innerexception.message);             w.writeline(ex.stacktrace);             w.writeline();             w.close();         }     } } 

app.config:

<configuration>   <configsections>     <section name="entityframework" type="system.data.entity.internal.configfile.entityframeworksection, entityframework, version=6.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089" requirepermission="false" />   </configsections>   <entityframework>     <defaultconnectionfactory type="system.data.entity.infrastructure.sqlconnectionfactory, entityframework" />     <providers>       <provider invariantname="system.data.sqlclient" type="system.data.entity.sqlserver.sqlproviderservices, entityframework.sqlserver" />     </providers>   </entityframework>   <connectionstrings>     <add name="servicemanagerconnection" providername="system.data.sqlclient" connectionstring="integrated security=sspi;persist security info=true;initial catalog=servicemanager;data source=." />   </connectionstrings>   <startup>     <supportedruntime version="v4.0" sku=".netframework,version=v4.5" />   </startup>   <appsettings>     <add key="serviceruninterval" value="5" />   </appsettings> </configuration> 

stack trace:

  @ system.data.entity.internal.internalcontext.performinitializationaction(action action)    @ system.data.entity.internal.internalcontext.performdatabaseinitialization()    @ system.data.entity.internal.lazyinternalcontext.<initializedatabase>b__4(internalcontext c)    @ system.data.entity.internal.retryaction`1.performaction(tinput input)    @ system.data.entity.internal.lazyinternalcontext.initializedatabaseaction(action`1 action)    @ system.data.entity.internal.lazyinternalcontext.initializedatabase()    @ system.data.entity.internal.internalcontext.getentitysetandbasetypefortype(type entitytype)    @ system.data.entity.internal.linq.internalset`1.initialize()    @ system.data.entity.internal.linq.internalset`1.get_internalcontext()    @ system.data.entity.infrastructure.dbquery`1.system.linq.iqueryable.get_provider()    @ system.linq.queryable.any[tsource](iqueryable`1 source, expression`1 predicate)    @ mysupersecretprojectname.program.onstart(string[] args) in c:\mysupersecretprojectname\program.cs:line 49 

the problem in connection string.all had change connection string use sql user name , password credentials, because windows service created local system permissions didn't have access talk sql


Comments

Popular posts from this blog

powershell Start-Process exit code -1073741502 when used with Credential from a windows service environment -

twig - Using Twigbridge in a Laravel 5.1 Package -

c# - LINQ join Entities from HashSet's, Join vs Dictionary vs HashSet performance -