Ваше предположение, что модель веб-страниц Asp.Net поддерживает только одну публикацию формы на страницу, неверно. Вы можете иметь несколько форм. Вместо того, чтобы использовать простой тест IsPost, вы предоставляете разные атрибуты имени для каждой кнопки отправки, связанной с каждой формой, и проверяете, какой из них был нажат, изучая коллекцию Request.Form:
@{
if(Request["form1"] == "submit"){
//form1 submitted
}
if(Request["form2"] == "submit"){
//form2 submitted
}
}
...
<form method="post" id="form1">
...
...
<input type="submit" name="form1" value="Submit" />
</form>
<form method="post" id="form2">
...
...
<input type="submit" name="form2" value="Submit" />
</form>
Но если вам нужна среда MVC, как говорили другие, используйте ASP.NET MVC.