Я конвертирую приложение asp.net MVC в silverlight, и из-за того, что я делал некоторые «нестандартные» вещи в своем приложении mvc, мне трудно пытаться понять, как его реализовать в Silverlight MVVM.
По сути, я генерировал все свои представления из метаданных, включая ссылки, кнопки и т. Д. Один из примеров того, что я не могу понять, как это сделать в Silverlight, - это то, что я передал коллекцию действий своему представлению, и имел вспомогательный класс html, который затем преобразовывал эти действия в ссылки
public static string GenericLinks(this HtmlHelper htmlHelper, int location, bool inTable, int? parentRecordId, List<ModelAction>
actions)
{
int actionNo = 1;
StringBuilder text = new StringBuilder();
foreach (var action in actions)
{
if (action.LocationType == location)
{
if (inTable)
text.Append("<td>");
else
if (actionNo > 1)
text.Append(" | ");
text.Append(htmlHelper.ActionLink(action.Label, action.ActionTypeLookup.CodeName, new { actionId = action.ModelActionId,
parentRecordId = parentRecordId }));
if (inTable)
text.Append("</td>");
actionNo++;
}
}
return text.ToString();
}
Это действительно хорошо работало в MVC.
Каким будет эквивент в MVVM?
Я ожидал бы, что смогу сделать что-то гораздо более подходящее, более похожее на создание своих действий в моей модели представления и каким-то образом привязаться к этим действиям в моем представлении ...