0

get_fieldValues().NameSharePointでの結果に対する私の理解が正しいことを確認しようとしています。

次のコードを使用すると:

var camlQuery = new SP.CamlQuery();
camlQuery.set_viewXml('<View><Query><Where><Eq><FieldRef Name=\'ID\'/>' +'<Value Type=\'Number\'>' + managerId + '</Value></Eq>' +'</Where></Query><RowLimit>1</RowLimit></View>');

var userInfoList = hostweb.get_siteUserInfoList();
var collListItem = userInfoList.getItems(camlQuery);

currentContext.load(collListItem);  
currentContext.executeQueryAsync(onQuerySucceeded,onQueryFailed);

function onQuerySucceeded(sender, args) 
{   
var item = collListItem.itemAt(0);

var userInfo = item.get_fieldValues().Name;
}

結果として、次のような文字列が得られます。

i:0#.f|メンバーシップ|example@example.org

私が理解しているように、これはバー/パイプで区切られた 3 つの部分に分かれています。

最初の部分が何であるかはわかりませんi:0#.fが、私はそれを利用していないので、それほど重要ではありません.

2 番目の部分はユーザーのカテゴリまたはグループのようですがmembership、私もこれを利用していません。

3 つ目は、ユーザーのメール アドレスか、ログイン名のようexample@example.orgです。

私の質問は、この 3 番目の部分が電子メール アドレス以外のものになる可能性があるかどうかです。私の組織では、このセクションは常に電子メール アドレスのようです。そのため、特定のユーザーのメールアドレスを見つけるために使用していますが、正常に機能しています。問題は、私が開発しているアプリが他の組織で使用される可能性があることです。他の組織では、そのセクションに電子メールが含まれず、代わりに別のものが含まれるのではないかと心配しています。その場合、電子メール アドレスではないものを取得して、それに電子メールを送信しようとします。これは問題であり、コードの特定の部分が壊れます。

4

1 に答える 1