【问题标题】:Is this a caching problem? Or what?这是缓存问题吗?或者是什么?
【发布时间】:2010-02-17 09:17:20
【问题描述】:

我使用我在此处找到的模板为 Sharepoint 创建了一个简单的自定义计时器作业:http://saftsack.fs.uni-bayreuth.de/~dun3/archives/visual-studio-2005-project-template-for-sharepoint-2007-timer-jobs/142.html

我已经成功部署并激活了 timerJob。然后我决定在作业中添加几行代码,看看我是否可以测试我的代码。

我已经使用这些命令卸载了我的 timerJob:

Stsadm.exe -o deactivatefeature -filename "\WeeklyDigestJob\feature.xml" -url http:/
/vmsrv28:8080/sites/MySite
STSADM -o uninstallfeature -name "WeeklyDigestJob" -force
STSADM -o retractsolution -name WeeklyDigestJob.wsp -immediate
STSADM -o execadmsvcjobs
STSADM -o deletesolution -name WeeklyDigestJob.wsp -override

然后我检查了文件夹 C:\Windows\assembly,我的 DLL 没有像我预期的那样存在。之后,我从我的 Visual Studio 2008 项目文件夹中删除了所有生成的二进制文件(DLL、WSP 文件等)并重建了解决方案。然后我使用相同的 setup.bat 文件来安装我的 timerJob 并开始等待。

一分钟后(在之前的版本中,计划是 2 分钟,所以我看到安装程序类运行正常,因为我将它从 2 分钟更改为 1 分钟)并且我的 timerJob 执行了。我对执行代码的更改没有显示任何效果。

我的初始代码是:

SPListItem newTask = taskList.Items.Add();
string r = DateTime.Now.ToString();
newTask["Title"] = r;
newTask.Update();

更新代码:

SPListItem newTask = taskList.Items.Add();
string r = DateTime.Now.ToString() + "New DLL";
newTask["Title"] = r;
newTask.Update();

但我在新添加的项目的标题中没有得到任何“New DLL”字符串。

我该如何解决这个问题?谢谢。

【问题讨论】:

    标签: sharepoint testing sharepoint-2007 custom-code


    【解决方案1】:

    您是否尝试过重新启动 services.msc 中的计时器服务?我过去发现这喜欢紧紧抓住 dll 直到你重新启动它

    同样值得检查一个完整的 IISReset 是否也能帮助它获取 DLL

    【讨论】:

    • 重启定时器服务成功了,非常感谢。
    猜你喜欢
    • 1970-01-01
    • 2012-07-28
    • 1970-01-01
    • 1970-01-01
    • 2010-10-18
    • 2012-07-17
    • 1970-01-01
    • 2010-10-07
    • 2018-03-09
    相关资源
    最近更新 更多