【发布时间】:2021-11-20 14:49:48
【问题描述】:
我对创建 Blazor WebAssembly 应用很感兴趣
我才发现我需要一个单独的类 SimpleMaths-class 包含小型业务逻辑
SimpleMaths 类
namespace MyFirstApp.Classes
{
public class SimpleMaths
{
public int SumOfTwo(int a, int b)
{
return a + b;
}
public int DistractionOfTwo(int a, int b)
{
return a - b;
}
public int Division(int a, int b)
{
return a/ b;
}
}
}
在_Imports.razor中我添加了以下语句,因为我想在整个项目中使用这个类:
@using MyFirstApp.Classes
Razor 文件包含以下内容
<p>Number One:</p>
<input type="number" id="Num1" @bind="Num1"/>
<p>Number Two:</p>
<input type="number" id="Num2" @bind="Num2"/>
<p>
<br/>
<button class="btn btn-primary" @onclick="Summerize">Sum</button>
</p>
<p>
Sum: @Sum
</p>
@code {
SimpleMaths sim = new SimpleMaths();
private int Num1, Num2, Sum = 0;
private void Summerize()
{
Sum = sim.SumOfTwo(Num1, Num2);
}
}
上述方法效果很好,但我有兴趣了解其他(或更简单的)方法
我认为以下方案比我实施的当前方案更好:
提供 Num1 和 Num2 作为参数并在 Sum 按钮的点击期间调用 SumOfTwo-method(来自 SimpleMaths)。这种方法可以实现吗?如果是,这是什么样的?
我的目标不是在整个页面中应用业务逻辑,我只是想知道它是如何工作的,以防我将来处理这类场景。 p>
【问题讨论】:
-
我认为您应该扩展“在单击 Sum 按钮时向 Sum 按钮提供参数并调用 SumOfTwo 方法(来自 SimpleMaths)”的含义。因为我无法了解你到底在追求什么。
-
我把你刚才引用的那句话改了。我想了解如何使用剃须刀页面中的类
-
还是不清楚。你需要很好地集中注意力,否则它会因为“太固执”而被关闭。当需要用户输入时,这是最好的。
-
SimpleMaths 可以(应该)被注入,但我认为这不是你在这里要问的。
-
你为什么不把它变成一个静态类?