与Blazor(服务器,如果有什么区别,请进行实验,并且我很难绑定到MultiSelectList上来工作。...
背景知识:我正在与EF Core进行交易,并且在人与汽车之间建立了多对多关系。我当前正在加载一个显示现有详细信息的页面,并允许用户更新此页面。
因此,在我的服务中,我从数据库加载了Person实体,其中包括他们当前拥有的所有汽车的详细信息。我还将加载所有可用汽车的列表。然后,我的Service方法创建一个MultiSelectList并将其添加到我的ViewModel中(返回到Razor页面):
服务方法
vm.CarSelector = new MultiSelectList(
allCars,
nameof(Car.CarId),
nameof(Car.Name),
person.OwnedCars.Select(oc => oc.CarId));
这是虚拟代码,但希望您能理解。调试时(在Service方法中),我可以看到MultiSelectList的每个汽车都有一个条目,并且已经选择的汽车显示为Selected。太好了!
[Blazor Razor Page
所以,这就是我要解脱的地方...。我无法解决如何将Razor控件与该对象进行双向数据绑定。
我让它与将MultiSelectList作为参数的组件一起使用。可能会有更优雅的方法来实现此目的(如果您知道更好的方法,请进行更新)。