我正在创建我的第一个Timer Job并想要调试它.我已经通过一个功能安装了计时器作业,并将其添加到webapplication的JobDefinitions集合中,并添加了一个SPMinuteSchedule,每5分钟运行一次(用于测试目的).
然后,在Visual Studio中,我尝试将调试器附加到WebApplication的Process,Central Admin进程和OWSTIMER.exe进程,但它不会调试到TimerJob的Execute方法.我在这里想念的是什么
PS计时器作业状态显示成功,因此正在运行.奇怪的...
我试图将$(配置)宏作为参数传递给外部工具(批处理文件),但是,它只是空的.我尝试通过调用一个简单的test.bat来回显%1参数并将$(Configuration)宏作为参数传递.但是没有显示任何内容.任何想法的人
我在更新项目时暂时禁用电子邮件通知时遇到问题,因此系统不会发送任何不必要的电子邮件.我想要完成的是禁用警报,更新项目,然后启用警报.
SPList tasklist = Web.Lists ["Tasks"];
tasklist.EnableAssignToEmail = false; //此属性使发送邮件被禁用
tasklist.Update();
//在这里做所有更新
项目["标题"] ="新标题"; Item.update();
tasklist.EnableAssignToEmail = true; //启用电子邮件通知
tasklist.Update();
一旦我启用了警报,代码中间所做的更改仍会启动警报并发送电子邮件.
谁有更好的想法来解决这个问题?谢谢.
我试图将SPListItem(带文件)从一个网站集复制到另一个网站集.我通过创建这样的文件来做到这一点:
var archiveFile = newsArchive.Lists[listName].RootFolder.Files.Add(originalItem.File.Name, originalItem.File.OpenBinary());
var archiveItem = archiveFile.Item;
Run Code Online (Sandbox Code Playgroud)
通过我编写的实用工具方法,然后将新项目的所有字段值设置为与原始项目相对应,如此
Utilities.PopulateListItemMetadata(....)
Run Code Online (Sandbox Code Playgroud)
问题是,这不会持续作者字段.
我尝试以各种可想象的方式明确地设置Author字段,例如:
string userName = originalItem.GetUser("Created by").LoginName;
SPUser user = newsArchive.SiteUsers[userName];
archiveItem["Author"] = user.ID + ";#" + user.LoginName;
archiveItem.Update();
Run Code Online (Sandbox Code Playgroud)
就像这样
string userName = originalItem.GetUser("Created by").LoginName;
SPUser user = newsArchive.SiteUsers[userName];
archiveItem["Author"] = user;
archiveItem.Update();
Run Code Online (Sandbox Code Playgroud)
但是一旦调用了SPListItem.Update()方法,archiveItem ["Author"]字段就会恢复为sharepoint\system.我在这里有点不知所措,这应该有效..
PS SPListItem.GetUser方法是一种扩展方法
PPS代码正在从计时器作业运行...
编辑:通过向内容类型添加新字段然后设置该字段以反映原始项目的作者,进行了更多挖掘,但也未设置.但是,web.EnsureUser(用户名)确实返回了正确的用户.这很奇怪还是什么!?!
我正在尝试FxCop(暂时通过UI,不包括在CruiseControl.NET等中)并且遇到了一些问题.似乎拼写检查器不喜欢我的客户的公司名称和产品名称,它要求我:
Correct the spelling of 'CompanyName' in namespace
name 'CompanyName.Product.TimerJobs.FeatureReceivers'.
Run Code Online (Sandbox Code Playgroud)
ObjectDataSource因此它们需要保留荷兰语,因为客户需要),我可以以某种方式将荷兰语库添加到FxCop吗?编辑
我找到了CustomDictionary.xml,但这被认为是最佳做法吗?如果有更多的人加入团队,他们需要一本字典副本,还是更好地转向持续集成?
sharepoint ×3
alert ×1
batch-file ×1
copy ×1
email ×1
fxcop ×1
msbuild ×1
spelling ×1
splistitem ×1
timer-jobs ×1
wss ×1