SharePointでは、以下のID;#値のような書式設定のIDと値のペアが多数あります。これは、マルチルックアップのようなフィールドではさらに複雑になり、そのフィールドの値を抽出するとid_1;#value_1;#id_2;#value_2;#id_3;#value_3のような結果が得られます。SharePoint ListItemデータから ';#'を削除する
既知のものがあればこのプロセスを単純化し、最低でもIDからIDを削除する組み込み関数を使用します。
SharePointでは、以下のID;#値のような書式設定のIDと値のペアが多数あります。これは、マルチルックアップのようなフィールドではさらに複雑になり、そのフィールドの値を抽出するとid_1;#value_1;#id_2;#value_2;#id_3;#value_3のような結果が得られます。SharePoint ListItemデータから ';#'を削除する
既知のものがあればこのプロセスを単純化し、最低でもIDからIDを削除する組み込み関数を使用します。
フィールド値オブジェクトは、Sharepointデータベースに文字列として格納されます。単純な値(「Hello world」など)の場合、これは十分簡単です。しかし、ID /値ペアなどの複雑なフィールド値の場合、値全体を単一の文字列として格納する方法は明らかに複雑です。 Sharepointの各フィールド値クラスは、独自のストレージ実装を担当します。 ToString()
はの書き込みを担当します。値の文字列表現です。フィールド値のコンストラクタは文字列を取り、それを解析し、すべてのプロパティを適切に設定します。
たとえば、SPFieldUrlValue(これは<a href="url">description</a>
を表します)には、UrlおよびDescriptionプロパティがあります。新しいSPFieldUrlValue(string fieldValue)
オブジェクトを作成すると、値が解析され、それに応じてプロパティが設定されます。
フィールド値の正しい/正確な(しばしば強く型付けされた)表現を得るためには、フィールドのタイプとそのフィールドの値クラスの種類を知る必要があります。
SPField class has many derived classed
例えば(つまりIDを使用しています。#VALUE)のルックアップフィールドタイプを想定しますSPField.Type == SPFieldType.LookupをチェックしてからSPFieldLookupにSPFieldをキャストして、レコードを取得するために、そのメソッドのオーバーライドを使用することができます値。
は詳細も
ため Custom Field Value Classesを参照してください - 私の記憶が正しければ、あなたが基本SPFieldオブジェクトに.ValueAsTextと.ValueAsHtmlを呼び出すことができ、それがIDを削除します(私はDyorのように、今、この権利をチェックすることはできません)。 #の値から。