所以我在这个'测试版'应用程序上有两个功能,我在这里使用ASP.NET进行学习。
我遇到了该应用的问题。该应用程序有4个用户输入框,所有这些都是出于数学目的。第一对采用2个值进行相乘,而第二对采用两个值相加。
这里的问题是,如果我要乘以值,然后添加,乘法输出将消失(如果你要添加然后加倍也会发生,添加会消失)并且我希望不会发生这种情况。如果有人能够解决这个问题,这是代码:
@Repository()
@Transactional(value = "syBaseTransactionManager")
public interface GroupSybaseRepository extends GroupRepository <String,Group>{
}
@Repository()
@Transactional(value = "db2TransactionManager")
public interface GroupDB2Repository extends GroupRepository <String,Group>{
}
和视图:
public class HomeController : Controller
{
public IActionResult Index(ExampleModel example, string Submit)
{
if (Submit == "Multiply")
{
double firstm = Convert.ToDouble(example.multFirst);
double secondm = Convert.ToDouble(example.multSecond);
example.multResult = firstm * secondm;
}
else if (Submit == "Add")
{
double firsta = Convert.ToDouble(example.addFirst);
double seconda = Convert.ToDouble(example.addSecond);
example.addResult = firsta + seconda;
}
return View(example);
}
无论如何都要解决这个问题?任何建议都非常感谢!
答案 0 :(得分:0)
一种解决方案是将ALTER TABLE `portfolio2` ADD UNIQUE `unique_idx`(`memberid`, `stocks_symbol`);
更改为DisplayFor
,就像这样
EditorFor
实际问题是,当您第二次渲染页面时,您使用的模型没有初始化@using (Html.BeginForm("Index", "Home"))
{
<br />
@Html.EditorFor(m => m.multFirst)
<br /><br />
@Html.EditorFor(m => m.multSecond)
<br /><br />
@Html.EditorFor(m => m.multResult)
<br /><br />
<input type="submit" name="Submit" value="Multiply" id="divide" />
<br /><br />
@Html.EditorFor(m => m.addFirst)
<br /><br />
@Html.EditorFor(m => m.addSecond)
<br /><br />
@Html.EditorFor(m => m.addResult)
<br /><br />
<input type="submit" name="Submit" value="Add" id="divide" />
}
,因为先前计算的结果除了表单本身之外没有存储在任何地方,并且由于相应字段是显示字段而不是编辑字段,因此表单不会提交此值。
答案 1 :(得分:0)
您可以在会话中存储添加结果和多个结果,并在返回视图之前每次检索example.addResult和example.multResult(示例)