【问题标题】:How to use Entity Framework witk Sharepoint Custom Timer Job?如何使用实体框架和 Sharepoint 自定义计时器作业?
【发布时间】:2011-05-08 21:33:01
【问题描述】:

我开发了一个 SharePoint 自定义计时器作业,它通过实体框架到达 SQL Server。所以通常 EF 使用 SharePoint 应用程序的 web.config AppSettings 来获取所需的 ConnectionString。但是,在这种情况下,自定义计时器作业通过 EF 到达 SQL Server,它给了我

在配置中找不到指定的命名连接,不打算与 EntityClient 提供程序一起使用,或者无效。

很明显,它无法从配置中读取 ConnectionString 值。

问题:

你们知道这个 SharePoint Customer Timer Job 的配置文件在哪里吗? SharePoint 管理应用程序 web.config?机器配置? Feature.xml 的 Feature?

如果它没有从配置文件中读取此信息,我应该怎么做才能访问 EF 的 ConnectionString?使用 Custom Timer Job 的属性来持久化 ConnectionString 信息?

【问题讨论】:

    标签: entity-framework sharepoint sharepoint-2010 connection-string sharepoint-timer-job


    【解决方案1】:

    SP 作业计时器由 SP 计时器作业窗口服务执行。 exe 是位于 bin 文件夹中的 Owstimer.exe。您可以添加或创建 Owstimer.exe.config,以便您的自定义作业可以从中读取。

    【讨论】:

    • 所以我把它改成了<?xml version="1.0" encoding="utf-8" ?> <configuration> <runtime> <connectionStrings> <add name="Holiday_Entities" connectionString="metadata=res://*/DataModel.HolidayDataModel.csdl|res://*/DataModel.HolidayDataModel.ssdl|res://*/DataModel.HolidayDataModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=CSNDEVPOOL06\DEVSQL;Initial Catalog=HUMANIST90;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" /> </connectionStrings> </runtime> </configuration> ,但还是一样的错误。
    • 它有效吗?您需要重新启动服务才能使配置生效
    • 哦,我注意到您使用集成安全性。当计时器启动作业时,它将采用服务(Owstimer)的进程所有者,通常是网络服务或本地服务。此 acc prob 无法对您的 SQL 服务器进行身份验证。我建议在您的 conn 字符串中创建和获取并使用它,或者将服务设置为以特定用户身份启动
    • 重启了定时器服务和 IIS。再次部署自定义计时器作业解决方案,仍然存在相同的错误。
    • SharePoint 2010 计时器服务 LogOnAs 用户是域用户,它在计算机和数据库上都具有必要的 SQL 服务器权限。很抱歉为这个小问题打扰你,但你知道现在对我来说是痛苦的。另外,现在是当地时间凌晨 1 点:)
    【解决方案2】:

    计时器作业不由 Web 应用程序托管。它在单独的进程中运行 - owstimer.exe。在您的服务器上找到该文件,然后简单地创建 owstimer.exe.config 文件(如果它不存在)并将必要的配置放入该文件。

    【讨论】:

    • 我在您在 Fadrian Sudaman 的帖子评论中提到的文件中为 EF 提供了必要的配置,但同样的问题仍然存在。你有什么建议吗?
    • 为什么connectionStringruntime 元素下?那应该直接在configuration 元素下。
    猜你喜欢
    • 1970-01-01
    • 2021-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多