1

カスタムプロパティを持つメンバータイプがあります-booksという名前を付けましょう-データタイプチェックボックスの-複数選択が可能です。

今、このメンバーをプログラムでbookの新しい値で更新しようとしています。customxml では cdata として提供されます。値を次のように渡します。

umbraco.cms.businesslogic.member.Member member =  umbraco.cms.businesslogic.member.Member.GetMemberFromEmail(email);
member.SetProperty("memberBooks", booksValue);
member.Save();

ここで、'booksValue' はコンマで区切られた値の文字列です。これは contentXml での表示方法であるためです。

うまくいきません。

問題は、メンバー プロパティ/xml を新しい複数の値で更新するにはどうすればよいかということです。

4

2 に答える 2

3

この問題は解決しました。

両方

member.getProperty(“memberBooks”).Value = booksValue;

member.SetProperty("memberBooks", booksValue);

仕事

間違った値を渡していました。

contentXml では値として表示されますが、実際には ID でプロパティを更新する必要があるため、データ型がチェックボックス リストで、値が次のようになっている場合:

1 - 本

2 - ブック

3 - ブック

次に、contentXml で「book,booko,booki」というリストとして表示されますが、プログラムで更新するには、プロパティに「1,2,3」を渡す必要がありました。

したがって、次のようになります。

member.SetProperty("memberBooks", "1,2,3");

それ以外の:

member.SetProperty("memberBooks", "book,booko,booki");

同じ問題を抱えている他の人に役立つことを願っています。

于 2013-06-27T08:45:49.987 に答える
0

これがあなたがする必要があることです:

umbraco.cms.businesslogic.member.Member member = umbraco.cms.businesslogic.member.Member.GetMemberFromEmail(email);
member.getProperty(“memberBooks”).Value = booksValue;
member.Save();

これがうまくいくことを願っています。久しぶりに使ってみましたがこんな感じです。

于 2013-06-26T10:56:18.787 に答える