Fer*_*gal 4 rest sharepoint-2010
在SharePoint 2010中使用REST,如何选择/过滤属于当前登录用户的列表行(无论是通过作者,编辑者还是按人员字段过滤的情况)
例如
http://myserver/_vti_bin/ListData.svc/Test?$filter=Author eq Me
Run Code Online (Sandbox Code Playgroud)
我知道在SP2007中,使用caml可以使用表示当前用户值的UserID元素.
编辑:Humm,似乎作者,编辑和任何其他人员字段存储为Ints并重命名为CreatedById和ModifiedById.如果你查询一个列表,你得到的就是
<d:CreatedById m:type="Edm.Int32">1</d:CreatedById>
Run Code Online (Sandbox Code Playgroud)
如果我想取回用户的NT名称该怎么办?我是否必须在某处进行另一个查询以获取特定用户的Int值?
您也可以将此与UserID一起使用.使用代码检索UserId:
var userId = _spPageContextInfo.userId;
并在URL中使用它如下:
"http://spdevportal/dev/Lab2/_vti_bin/ListData.svc/IPParams?$filter=CreatedById eq"+userId
Run Code Online (Sandbox Code Playgroud)
例如: http://spdevportal/dev/Lab2/_vti_bin/ListData.svc/IPParams?$filter=CreatedById eq 213
它将为您提供由Current LoggedIn用户创建的所有项目.
您还可以使用'和'添加一些额外的过滤器
"http://spdevportal/dev/Lab2/_vti_bin/ListData.svc/IPParams?$filter=CreatedById eq"+userId+" and StatusValue eq 'approved'"
Run Code Online (Sandbox Code Playgroud)
例如:
"http://spdevportal/dev/Lab2/_vti_bin/ListData.svc/IPParams?$filter=CreatedById eq 213 and StatusValue eq 'approved'"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5878 次 |
| 最近记录: |