Umbraco サイトのすべてのユーザーの詳細を取得しようとしています。これの目的は、コンテンツ作成者が、Web サイトの匿名ユーザーが連絡できるコンテンツの「所有者」としてユーザー名を指定できるようにすることです (ユーザー名とコンテンツによって与えられたユーザー名を照合した後、保存された電子メール アドレスを使用する単純な「mailto」リンク)。クリエイター)。
以下を使用してユーザーの詳細を取得できました。
var users = umbraco.BusinessLogic.User.getAll();
しかし、Visual Studio で次の警告が表示されます。
'Umbraco.BusinessLogic.User' is obsolete: '"Use the UserService instead"'
UserService のインスタンスを作成しましたが、GetAll() 関数には、BusinessLogic 関数にはない多くのパラメーターが必要です。
UserService を使用してすべてのユーザーを取得するにはどうすればよいですか?
私が達成しようとしていることを達成するためのより良い方法はありますか?
明確にするために、これは非推奨の BusinessLogic で使用した次のコードです。
var users = umbraco.BusinessLogic.User.getAll();
var owners = Umbraco.Field("owner").ToString().Split(',');
foreach (var user in users)
{
foreach (var owner in owners)
{
if (String.Equals(user.LoginName, owner))
{
<div class="owner">
<a href="mailto:@user.Email">@owner</a>
</div>
}
}
}