我有一个大型的Silverlight应用程序,我已经成功地转换并添加了一个CloudService项目。我已经将数据库上传到了sql azure,并且从我的webconfig文件中连接到了sqlazure上的这个数据库,一切正常。所以,我的下一步,我崩溃的地方,是在我的解决方案中添加一个云服务,并将该服务设置为一个启动项目。
所以,我猜我没有正确地将connectionstring添加到serviceconfiguration.cscfg/servicedefinition.csdef
是吗?
获取的错误是:错误消息用于查询loadusers:system.servicemodel.domainservices.client.domainoperationexception:查询“loaduserinfo”的加载操作失败。远程服务器返回错误:notfound…..
我的连接字符串在webconfig中如下所示:
<add name="LiveEntities" connectionString="metadata=res://*/LiveModel.csdl|res://*/LiveModel.ssdl|res://*/LiveModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.;Initial Catalog=Live09092010;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
我需要将相同的connectionstring放入serviceconfiguration.cscfg/serviceconfinition.csdef中吗?它应该是什么样子的?
Solution Live
SilverLight App proj 1
--files
Silverlight App proj 2
--files
Silverlight App proj 3...
--files...
Live.Web
--My Project
--Default.aspx
--Web.config
--etc..
LiveCloudServices
Roles
--Live.Web
--ServiceConfiguration.cscfg
--ServiceDefinition.csdef
最佳答案
serviceconfiguration.cscfg和service definition.csdef帮助定义azure结构将如何承载你的应用。如果不需要应用程序设置,则现在必须将它们放在这些文件中。
基本上,还有些问题。如果你提供了更多的见解(从评论中),但我想回答你的实际问题,我会编辑这个。
您希望使用cscfg文件中的设置的时间是,您需要在运行时更改这些设置,或者不关闭服务以使其生效。在该上下文中使用的变量在服务定义中定义,然后在serviceconfiguration中设置它们的值。
然后.cscfg文件可以在运行时上载,这将在应用程序中引发事件。你可以挂起这个事件,并根据你的需要做出回应。
关于database - ServiceConfiguration.cscfg和ServiceDefinition.csdef如何在Azure中与WebConfig一起使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3683627/