viewModelを返すコントローラーがあります。
そのviewModelには、Usersというプロパティがあります。これは、現在システムにアカウントを持っているすべてのユーザー名の配列です。これは、jqueryタグ付けプラグインに使用されます。
Usersプロパティは、配列をビューに正しく送信します
しかし@Model.Users
、ビューで使用すると、タイプが取得されます。System.String[]
これはとてつもなく簡単に解決できるものだと思います。
コントローラ
public virtual ActionResult Create(int id)
{
var viewModel = new AttendeeViewModel();
var data = viewModel.GetMembershipUserList() ;
viewModel.MeetingID = id;
viewModel.Users = data.ToArray();
return View(viewModel);
}
ViewModel
public class AttendeeViewModel
{
public int AttendeeId { get; set; }
public string Name { get; set; }
public int MeetingID { get; set; }
public string[] Users { get; set; }
public List<string> GetMembershipUserList()
{
List<string> userNames = new List<string>();
foreach (MembershipUser user in Membership.GetAllUsers())
{
userNames.Add(user.UserName);
}
return userNames;
}
}
使用法を表示
<script type="text/javascript">
var tags = @Model.Users
$(document).ready(function () { $("#mytags").tagit({ availableTags: tags }); });
</script>