C# 什么';在实例化时将大量信息传输到另一个类的最佳实践是什么?
我有两个不同的WPF项目。第一个应该启动第二个项目主窗口的新实例 ProjectOne类应该启动主窗口,它是MVVM模式中的一个VM,为第二个项目提供有用的信息 根据这些信息,第二个项目的行为将发生变化。假设我必须转移10个变量,项目有5种不同的行为,它们由这些变量决定 要求只使用一个构造函数实例化主窗口。 如果我只有一个构造函数,每个可能的行为都有10个变量和5个if语句,那就太糟糕了C# 什么';在实例化时将大量信息传输到另一个类的最佳实践是什么?,c#,wpf,theory,C#,Wpf,Theory,我有两个不同的WPF项目。第一个应该启动第二个项目主窗口的新实例 ProjectOne类应该启动主窗口,它是MVVM模式中的一个VM,为第二个项目提供有用的信息 根据这些信息,第二个项目的行为将发生变化。假设我必须转移10个变量,项目有5种不同的行为,它们由这些变量决定 要求只使用一个构造函数实例化主窗口。 如果我只有一个构造函数,每个可能的行为都有10个变量和5个if语句,那就太糟糕了 处理此类问题的公认方法是什么?我不确定在将这些参数传递给构造函数时,您是以何种方式实例化第二个窗口的,但当您
处理此类问题的公认方法是什么?我不确定在将这些参数传递给构造函数时,您是以何种方式实例化第二个窗口的,但当您希望在对象之间传递大量信息时,我建议将参数包装到两个项目都能识别的
类
或结构中。这样,您只传递一个参数,而不是10个或更多
这样,无论您是从文件中读取这些参数,还是从第一个应用程序作为参数传递这些参数,构造函数都只需要一个参数。您不能编写一个“DetermineState”方法,并将该方法的结果传递给project 2的构造函数吗?(例如,传递“ProjectTwoState”emum值)您的解释不够充分。例如,您总是需要这10个变量吗?在这种情况下,传入一个具有10个属性的类似乎有点明显。数据、行为和if语句的模式是什么?它们是否相互排斥。。。。还是怎样也许您可以使用继承并传入香蕉、苹果或菠萝,所有这些都继承自水果并重写extractjuice方法。我们只能猜测。