Я не уверен, как это будет выглядеть в VB, но в C # (и в духе MVC) вам понадобятся 3 вещи:
Модель:
public class SomeModel
{
[DisplayName="Param One"]
public String ParamOne{get; set;}
[DisplayName="Param Two"]
public String ParamTwo{get; set;}
}
A Вид:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<SomeModel>" %>
<asp:Content ID="SomeID" ContentPlaceHolderID="TitleContent" runat="server">
A title for your page
</asp:Content>
<asp:Content ID="loginContent" ContentPlaceHolderID="MainContent" runat="server">
<%
using (Html.BeginForm("Process", "SomeModel", returnURL))
{%>
<%= Html.LabelFor(m => m.ParamOne)%>:
<%= Html.TextBoxFor(m => m.ParamOne)%>
<%= Html.LabelFor(m => m.ParamTwo)%>:
<%= Html.TextBoxFor(m => m.ParamTwo)%>
<%--- A button ---%>
<input type="submit" value="Press Me" />
<%
} %>
<%--- Display Errors ---%>
<%= Html.ValidationSummary()%>
</asp:Content>
Контроллер:
public class SomeModelController:Controller
{
[HttpPost]
public ActionResult Process(SomeModel model)
{
Validate(model);
return View(model);
}
private bool Validate(SomeModel model)
{
if(/*both params are valid*/)
{
return true;
}
else
{
ModelState.AddError("error", "Some error message");
return false;
}
}
}
Обратите внимание, что в этом случае любые ошибки проверки будут отображаться на той же странице, на которой они были введены. Если вы хотите изменить это, вам придется изменить контроллер и добавить больше представлений:
[HttpPost]
public ActionResult Process(SomeModel model)
{
if(ModelState.IsValid && Validate(model))
{
return RedirectToAction("Success", "SomeModel");
}
else
{
return RedirectToAction("Failure", "SomeModel");
}
}
[HttpGet]
public ActionResult Success(SomeModel model)
{
return View(model); // Shows the Success.aspx page
}
[HttpGet]
public ActionResult Failure(SomeModel model)
{
return View(model); // Shows the Failure.aspx page
}
Как я уже сказал, это на C #, но его не должно быть так сложно перевести на VB ... кроме того, это всего лишь общий подход к проблеме, вам, возможно, придется настроить несколько вещей, чтобы на самом деле получить его работать должным образом. Здесь следует отметить, что шаблон MVC вначале может показаться немного громоздким, то есть для простой кнопки вы должны написать LOT кода, но он окупается, когда у вас сложное приложение.