목록에서 문서 라이브러리 인 쿼리를 실행하면 ListItems에 채워지지 않은 파일 멤버가 있습니다. 분명히 성능상의 이유로 쿼리는 기본적으로 모든 데이터를 가져 오지 않지만 쿼리 구문이 모든 목록에 대해 일반적이고 파일 라이브러리 만 파일을 포함하기 때문에 파일 멤버를 채우도록 쿼리에 지시하는 방법을 알아낼 수 없습니다 그들 안에.클라이언트 개체 모델 Sharepoint 2013 API를 사용하여 ListItem의 File 멤버를 채우는 방법은 무엇입니까?
1
A
답변
1
그것이 ClientRuntimeContext.Load Method를 통해 명시 적으로 지정해야 초기화 :
private static ListItem GetListItem(string url, ICredentials creds, string listTitle, int listItemId)
{
using (var clientContext = new ClientContext(url))
{
clientContext.Credentials = creds;
var list = clientContext.Web.Lists.GetByTitle(listTitle);
var listItem = list.GetItemById(listItemId);
clientContext.Load(list);
clientContext.Load(listItem, i => i.File); //specify File property
clientContext.ExecuteQuery();
return listItem;
}
}
0
이 샘플 코드는 당신을 도움이 될 것입니다
은 파일의 속성을 ListItem을 검색하기 위해var ctx = SP.ClientContext.get_current();
var itemFile = ctx.get_web().get_lists().getByTitle("Shared Documents").getItemById(1).get_file();
ctx.load(itemFile);
ctx.executeQueryAsync(function(){
console.log(itemFile.get_title());
},function(sender,args){
console.log(args.get_message());
});