【发布时间】:2013-10-07 09:51:43
【问题描述】:
我将 PRISM/MEF 用于我的 C# 应用程序。我想做以下事情,我对 PRISM 真的很陌生,也许我做错了什么或者做错了什么,但它不像下面显示的那样工作。
我创建了两个模块,在 Module1 中我创建了一个类的实例。我想与其他 Module2 共享此实例。
类似这样的:
模块 1(视图模型):
[Export("ME")]
private Person me = new Person();
//within some function...
me.Name = "Jasmin";
模块2(视图模型):
[Import("ME")]
private Lazy<Person> me;
//within some function
Console.Writeline(me.Name); //here I want to get "Jasmin"
共享模型类:
public class Details
{
public string Name;
}
public class Person
{
public Name first = new Name();
}
【问题讨论】:
-
看看stackoverflow.com/questions/9010437/…。您是否在整个对象层次结构中使用不同的 MEF 容器?
-
不,只有一个来自引导程序。我之前看过这个链接,但我仍然没有看到让它工作的答案。如果有人可以修改我的代码以使其正常工作,我将不胜感激。我想它毕竟并不复杂?
-
@user2799180 你得到错误或什么?顺便说一下 me.Name 应该是 me.Value.Name。
-
我不知道发生了什么,但现在可以了。正如它应该的那样。也许它所需要的只是重建整个解决方案。