Я занимаюсь разработкой примера кода и хочу правильно использовать технологию MVC.
У меня есть представление, которое запрашивает данные из базы данных, если данные существуют, то они будут отображаться, в противном случае будут отображаться некоторые другие значения:
Вид:
<table>
<tr>
<td>Status: </td>
<td>
<input type="text" name="txtStatus" value="@Model.StatusChoice.FirstOrDefault().CurrentStatus" />
</td>
</tr>
</table>
Контроллер:
public ActionResult RStatusC(string CurrentStatus)
{
return View(UpdateMainGrid(CurrentStatus));
}
public DataList UpdateMainGrid(string CurrentStatus)
{
StatusModel Choices = new StatusModel();
Choices.GetStatus(DB, CurrentStatus);
return Choices;
}
Модель:
public List<RequestedStatusC> GetStatus(DB_Entities DB, string CurrentStatus)
{
List<RequestedStatusC> SR = new List<RequestedStatusC>();
SR = DB.Database.SqlQuery<RequestedStatusC>(@"SELECT CurrentStatus
FROM MyTable
WHERE CurrentStatus = {0}
ORDER BY StatusKey", CurrentStatus).ToList();
if (!SR.Any()) SR.Add(new RequestedStatusC { CurrentStatus = (CurrentStatus == "" ? "Missing" : CurrentStatus) });
return SR;
}
Это правильный путь? Особенно с использованием if (!SR.Any())
в Model ?