Tag: viewmodel

从另一个ViewModel访问属性

我希望主视图模型具有某个列表,然后从许多其他视图模型访问。 例如,在MainViewModel.cs中我将有一个包含50个数字的列表,然后在NumListViewModel.cs中,我想访问它以便将其显示为列表,而在AddNumViewModel.cs中,我希望能够更新该列表。 有人建议我使用event / evenaggerator,我做过,但不幸的是,据我所知,我所能做的就是从一个视图向另一个视图发送一个num并告诉它更新列表,但问题是,程序增长,我需要在主视图模型中有很多订阅者,当实际发生某些事情时,我将不得不根据订阅者的数量“发布”事件,这使得它更难维护。 我还找到了另一个答案,指示在mainVM中创建另一个VM的实例,参数设置为“this”,这是对mainVM的引用。 它有效,但话说再说,它可能会很长。 所以我的问题是,有没有更好的方法从另一个VM访问属性? 就像字面上有一个类的实例,它将列表保存在mainVM中,然后只需能够从其他VM更新/访问它,而无需显式编程哪个VM可以。 会让生活变得如此简单。 在你的回答中,请尽量避免建议框架。 虽然有一些非常好的,但我希望能够至少自己做到这一点。 例如: MainVM.cs: public class MainVM { List lst = new List(); //Let’s just say it’s full… } OtherVM.cs: public class OtherVM { lst.Add(3); } PS:是的,我知道它已经被问过了,是的,我已经完成了我的研究,但是我发现的答案太“静止”了,我猜?

在单个控制器中使用多个模型

我已经使用数据库中的EF Designer从为我的项目创建的数据库中构建我的模型。 对于单个控制器,我需要引用多个模型。 这方面的一个例子是有一个Users表,其中包含用户部门和办公室。 我需要引用两个单独的表DepartmentPermissions和OfficePermissions来确定用户能够看到的数据。 以下是自动生成模型的示例: //—————————————————————————— // // This code was generated from a template. // // Manual changes to this file may cause unexpected behavior in your application. // Manual changes to this file will be overwritten if the code is regenerated. // //—————————————————————————— namespace Project.Models { using System; using System.Collections.Generic; public partial […]