Question

J'ai ce Splistitem.folder dans SharePoint qui contient une propriété nommée "Asset ID".

J'ai ces données dans ma liste

Asset ID  |     Name      |  Asset Type 
    1     |  GamesFolder  |    Games
    2     |  AppsFolder   |    softwares
    3     |  MusicFolder  |    music

Dans mon code, j'ai fait ça

SPList objList = web.Lists["MyList"];
SPQuery query = new SPQuery();

query.Query = "<OrderBy><FieldRef Name='Asset ID' Ascending='FALSE'/></OrderBy>";
query.ViewAttributes = "Scope=\"Recursive\"";               
query.RowLimit = 1;

SPListItemCollection items = objList.GetItems(query);

return objList.Items[0].Folder.Properties["Asset ID"].ToString();

J'utilise. Folder car chaque entrée de la liste est un ensemble de documents. La valeur renvoyée est toujours "1". Je ne sais pas ce qui ne va pas pourquoi mon tri ne fonctionne pas du tout.

S'il te plaît, aide-moi à résoudre ce problème. Merci.

Était-ce utile?

La solution

Salut Carls Je pense qu'il y a un problème pour le nom du champ. Vous incluez de l'espace dans le nom du champ

Si vous voulez éviter d'avoir à rechercher quel est le nom interne d'un champ particulier, lorsque vous nommez votre colonne, n'incluez aucun espace ou caractères spéciaux. Une fois le champ (colonne) créé, revenez en arrière et renommez le champ pour inclure les espaces ou les caractères spéciaux comme vous le souhaitez. SharePoint conservera toujours le nom de champ d'origine sans espaces et vous pouvez l'utiliser directement dans votre requête sans problème.

Autres conseils

ou utilisez son nom interne:

query.query = "u003COrderBy>u003CFieldRef Name='Asset_x0020_ID' Ascending='FALSE'/>u003C/OrderBy> "

Un peu tard mais si vous rencontrez des problèmes, vous pourrez peut-être utiliser tout ou partie de l'essentiel suivant:https://gist.github.com/trgraglia/4672176

Et comme l'indique la réponse acceptée, le nom du champ est le problème. Vous devez utiliser le nom statique du champ. Le nom statique restera toujours le même. Même si la colonne est renommée. Vous devez donc obtenir la colonne de la collection de colonnes par nom d'affichage, puis obtenir le nom statique des propriétés.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top