【发布时间】:2019-09-26 21:12:01
【问题描述】:
我正在尝试将此 Webform 应用程序转换为 MVC 应用程序
如何在控制器视图中访问我的列表框?
我是个新手
这是网络表单:
protected void btnPrintToken_Click(object sender, EventArgs e)
{
Queue<int> tokenQueue = (Queue<int>)Session["TokenQueue"];
lblStatus.Text = "There are" + tokenQueue.Count.ToString()+
" customers before you in the queue;
if (Session["LastTokenNumberIssued"] == null)
Session["LastTokenNumberIssued"] = 0;
}
int nextTokenNumberTobeIssued = (int)Session["LastTokenNumberIssued"] + 1;
Session["LastTokenNumberIssued"] = nextTokenNumberTobeIssued;
tokenQueue.Enqueue(nextTokenNumberTobeIssued);
foreach(int token in tokenQueue)
listTokens.Item.Clear();
{
listTokens.Items.Add(token.ToString());
}
}
这是我的 MVC 应用程序:
public ActionResult PrintToken()
{
Queue<int> tokenQueue = (Queue<int>)Session["TokenQueue"];
if (Session["LastTokenNumberIssued"] == null)
{
Session["LastTokenNumberIssued"] = 0;
}
int nextTokenNumberTobeIssued = (int)Session["LastTokenNumberIssued"] + 1;
Session["LastTokenNumberIssued"] = nextTokenNumberTobeIssued;
tokenQueue.Enqueue(nextTokenNumberTobeIssued);
foreach(int token in tokenQueue)
{
listTokens.Items.Add(token.ToString());
}
return View();
}
它几乎具有相同的视图,但我不知道如何在 MVC 中访问我的视图,就像在“lblStatus.Txt”之类的网络表单中一样
【问题讨论】:
-
尝试不使用
Session[]。你还在用 WebForms 风格思考,那是行不通的。您需要一个 ViewModel 才能通过:return View(myViewModel); -
你能告诉我这是怎么回事吗?请我是新手,我还不太明白其中的区别
-
@HenkHolterman 我正在尝试在 mvc youtube.com/watch?v=SIs7ZsMCUWA 中执行此操作
标签: asp.net asp.net-mvc webforms