MOSS 关于SPQuery 和SPSiteDataQuery的区别好用法!
来源:互联网 发布:捕鱼软件开发 编辑:程序博客网 时间:2024/04/29 06:16
MOSS 关于SPQuery 和SPSiteDataQuery的区别好用法!
下面的代码是给在做MOSS开发的同行们的一些对象模型的学习,和自己的看法
MOSS 关于SPQuery 的用法,是关于列表的查询范围比较的小。。
SPWeb web = (new SPSite("http://moss/sites/hello")).OpenWeb();
SPList list = web.Lists["test"];
SPQuery query = new SPQuery();
query.Query = "<Where><Contains><FieldRef Name='Title'/><Value Type='Text'>4</Value></Contains></Where>";
SPListItemCollection items = list.GetItems(query);
foreach(SPListItem item in items)
Console.WriteLine(item.DisplayName);
SPSiteDataQuery的是查询整个Site的范围比SPQuery大,我就不在这里罗嗦拉,大家看拉代码测试一下,就很明白拉
SPWeb web = (new SPSite("http://moss/sites/hello")).OpenWeb();
SPSiteDataQuery query = new SPSiteDataQuery();
query.Query = "<Where><Contains><FieldRef Name='Title'/><Value Type='Text'>4</Value></Contains></Where>";
query.Lists = "<Lists BaseType='0' />";
query.Webs = "<Webs Scope='Recursive' />";
query.ViewFields = "<FieldRef Name='Title' /><ProjectProperty Name='Title' /><ListProperty Name='Title' />";
DataTable dt = web.GetSiteData(query);
Console.WriteLine(dt.Rows.Count);
/////////////测试代码//////////////////////////////////
protected void btnSearch_Click(object sender, EventArgs e)
{
try
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
string query = ""+this.texName.Text+"";
SPSite site = new SPSite(@"http://wh/sites/oa");
site.AllowUnsafeUpdates = true;
SPWeb web = site.OpenWeb();
web.AllowUnsafeUpdates = true;
SPList list = web.Lists["文件查询"];
SPViewCollection views = list.Views;
StringCollection viewFields = new StringCollection();
for (int i = 0; i < list.DefaultView.ViewFields.Count; i++)
{
viewFields.Add(list.DefaultView.ViewFields[i]);
}
SPView view = null;
try
{
view = views["查询结果"];
}
catch
{
}
if (view == null)
{
view = views.Add("查询结果", viewFields, query, 10, true, false);
}
else
{
view.Query = query;
}
view.Update();
string url = list.DefaultViewUrl.Replace(list.DefaultViewUrl, view.Url);
this.Response.Redirect(url);
web.AllowUnsafeUpdates = false;
site.AllowUnsafeUpdates = false;
});
}
catch(Exception ex)
{
this.Response.Write(ex.Message);
}
- MOSS 关于SPQuery 和SPSiteDataQuery的区别好用法!
- WSS和MOSS的区别
- WSS和MOSS的区别
- SPQuery 的Where 子句的用法
- 关于Moss的开发
- SPSiteDataQUery 用法总结(原)
- 关于MOSS的应用和开发的一些联接
- 转: 在WSS/MOSS中使用SPQuery分页
- 关于MOSS的学习方向
- 关于sizeof和strlen的区别和用法
- MOSS两种搜索服务的区别
- 关于MOSS 2007的Content Types
- 关于Moss 2007的权限理解
- 关于typedef和define的区别以及用法
- 关于src 和 drawable 之间的区别以及详细用法
- c#,sharepoint,2007,moss,spsitedataquery,跨列表查询,跨网站查询,join,联合查询
- 使用SPQuery进行条件查询和排序
- 关于PHP的框架和CMS的区别,以及为什么我要好好学习框架
- 转控件
- 献给2008届信息与计算科学毕业生
- 奥运36个精彩图片展-转-3
- 我的学生...我的事业...我的人生路...
- PKI_SVS签名验证服务器
- MOSS 关于SPQuery 和SPSiteDataQuery的区别好用法!
- 中国IT行业的悲哀,请理解IT行业“资深”的真正含义
- VBscript 的数据类型
- think in baidu
- 奥运36个精彩图片展-转-4
- 模块动态加载技术
- [顶]CSDN精华贴:中国一般高校本科IT类专业教育应全盘反思
- 何丹网2008-8-26
- 清空系统密码