例如:我定义了实体类X1,X2,X3;还定义了
class A
{
public string ret { get; internal set; }
public string msg { get; internal set; }
public X1 data { get; internal set; }
}
class B
{
public string ret { get; internal set; }
public string msg { get; internal set; }
public X2 data { get; internal set; }
}
class C
{
public string ret { get; internal set; }
public string msg { get; internal set; }
public X3 data { get; internal set; }
}
能不能将A、B、C三个类合成一个实体类,而将X1、X2、X3作为参数在合并类中的构造函数传入。
如可否这样:
class D
{
System.Type X;
public D(System.Type type)
{
this.X=type;
}
public string ret { get; internal set; }
public string msg { get; internal set; }
public X.GetClass Data { get; internal set; }
}
当然啦,X.GetClass是不存在的,不知能不能类似这样的方法实现?
åèä¸é¢ä»£ç ï¼
public static void GetResult(Person p)1、用Object类:
class ABC2、用dynamic
class ABC3、用泛型
class ABC<T>就你的情况,个人推荐用泛型。
追问Very good!用泛型能解决我的问题,因为在调用合并类的时候要确定 data的类型。看来我该多学学泛型的使用,非常感谢!!!
本回答被提问者采纳C# 怎么将类作为参数传递?
public static void GetResult(Person p){Console.WriteLine(p.b);}public class Person{public int a { get; set; }public string b { get; set; }}
C# 类名 当参数传递
结构是值类型,无需实例化,所以根本没必要作为参数去传递。你想在其他方法中访问的话直接通过结构名.属性即可。class1.j就可以访问到该属性了。如果说要把类当参数传递,我帮你更正下。首先定义一个类,而不是结构。public class class1{ \/\/这里我把属性初始化并赋值,方便后面测试 public int...
C#多个项目之间如何传递值呀?
1、添加引用,使用全局变量或者是在构造函数中传递参数;2、写一个公共类或是接口,用它来传递参数;3、使用事件和委托来传递参数;希望对你有帮助,如有疑问请追问或是Hi
C#如何将类型Type作为泛型T的参数T传递
现在我们分析一下,首先这个方法需要指出两个参数的类型,这里定为泛型类型T1和T2,这里的限定是IEnumerable,这样我们才可随意枚举这两个参数的元素。由于要比较元素大小而元素的类型不确定,所以还需要一个泛型类型指定两个参数中元素的类型,这里用泛型类型TElement。因为需要比较大小,这里加上限定IComparab...
在C#中何为参数,参数的定义是什么?
当类作为参数的时候,参数被修改时,可能修类成员的值. 2.引用方式参数传递 如果我门将参数作为引用方式传递,也就是用ref修饰参数。ref方式传递引用方式传递引用类型和引用方式传递值类型,都会保存方法中的修改. 1.值参数的调用 在Main函数中声明了一个i,这时候在内存的堆栈中就会专门为i开辟出一...
C#两个项目之间如何传递参数
稳定的办法:用sendmessage,为了防止两个项目之间使用传输数据丢失,将要传输的数据写到一个文件或者注册表里面,接收方接到这个消息后访问该文件 如果你是一个程序启动另外一个程序,启动的时候传一些参数那就简单了。string mainPath = basepath + "\/main.exe";Process.Start(mainPath, "参数");...
C#中传值的方法共有几种?烦请举例
第一种方法就是静态变量机制,C#公布静态变量就是将该类的已有的实例公开,和VC做法雷同,假设我们在一个窗体中这么写:public static String str="";void loadForms(object sender,EventArgs e){ Form2 f=new Form2(); textBox1.Text=str; f.ShowDialog();\/\/一定不要用show}另一个窗...
C#中类的方法怎么用的?
C#中方法的参数有四种类型:1. 值参数类型 (不加任何修饰符,是默认的类型)2. 引用型参数 (以ref 修饰符声明)3. 输出型参数 (以out 修饰符声明)4. 数组型参数 (以params 修饰符声明)=== 1.值传递: 值类型是方法默认的参数类型,采用的是值拷贝的方式。也就是说,如果使用的是值类型...
C#中能够实现将任意方法作为参数传入一个指定方法吗
static void Main(string[] args){ foreach (Amb a in GtA()) \/\/这个foreach里面的参数也是一个方法GtA(),只不过方法的返回值也是一个数组,所以也可以。{ Console.WriteLine("载具 {0} 行驶1000千米需要 {1} 小时", a.Name, a.Run(1000));} Console.ReadLine();} static Amb[] GtA(...
c#中不同类之间如何实现值的传递
protected string id ;protected string name ;protected int age;public Person(string id, string name, int age){ this.id = id;this.name = name;this.age = age;} public virtual void Display(){ Console.WriteLine("Name: {0}", name);Console.WriteLine("ID: {0}", id);Console....