Tag:

通常填充不同的类成员

我正在开发一个带有几(11)个Web服务调用的Web服务应用程序。 对于每个Web服务,我需要从字符串数组中填充Soap Body,如下所示: if (aMessage[(int)DCSSCustomerUpdate_V3.Branch].ToString().Length != 0) { wsSoapBody.Branch = aMessage[(int)DCSSCustomerUpdate_V3.Branch].ToString(); } aMessage[int]是字符串数组,[int]由枚举常量定义 – 在这种情况下,它定义如下: private enum DCSSCustomerUpdate_V3 { MsgType = 0, MsgVersion = 1, WSName = 2, ReplyTo = 3, SourceSystem = 4, … } 部分类中的属性名称与枚举常量匹配,所以我想我也会传入枚举常量? 部分类在wsdl中定义如下: public partial class DCSSCustomerUpdateType { private string instIdField; private string branchField; … } 我不知道是否有一种方法可以传递部分类wsSoapBody (以及字符串数组)并循环遍历类的所有成员,分配值,而不是分别为每一个执行此操作(在11个自定义服务类中)从字符串数组? 编辑 : […]

计算类方法中类类型的对象数

如何在该类的方法中计算类类型的对象数? 就此而言,如何在没有将对象添加到列表的情况下在类之外执行此操作? 我应该想到这个! 谢谢! 我会在一段时间内没有回答,看看是否有更好的方法,因为我同意。 我只是把头包裹在OO周围。 如果你不介意让我解释一下,也许总的来说有更好的方法吗? 我有一个对象类,我想要添加3条信息,但首先我要循环并确保没有其他对象与这三个部分中的任何一个相同,如果有,为每个做不同的事情案件。

C#中的静态类,有什么优缺点?

我正在为我的学校作业编写一个小游戏,游戏是一个简单的2D游戏,有怪物,物品和子弹。 基本上你跑来跑去并试图收集所有物品硬币,怪物试图阻止你,你可以用你收集的子弹击落它们。 非常简单。 问题是,我已经将怪物,物品,墙壁,玩家和子弹添加到名为LiveObjects的静态类中,然后我可以从代码中的任何位置访问这些对象。 这是一种不好的做法吗? 什么是替代品? (它不是multithreading的) LiveObjects.cs internal static class LiveObjects { public static List items = new List(); // List with all the items public static List monsters = new List(); // List with all present monsters public static List walls = new List(); // List with the walls public static List bullets […]

如何将Class作为方法的参数传递?

我有两个class: Class Gold; Class Functions; 类Functions有一个方法ClassGet ,它有2个参数。 我想发送类Gold作为类Functions一个方法的参数。 这怎么可能? 例如: public void ClassGet(class MyClassName, string blabla) { MyClassName NewInstance = new MyClassName(); } 注意:我想将MyClassName作为字符串参数发送到我的方法。

从string创建类实例

我有一个C#方法,它从字符串创建一个类的新实例,但是,在运行代码时出现错误。 obj = (ClassX)Activator.CreateInstance(Type.GetType(“classPrefix_” + className)); ArgumentNullException未处理 值不能为空 参数名称: 类型 任何有关此错误的帮助将不胜感激。

初始化Lookup

如何在c#中的对象初始化程序例程中为属性声明一个新的查找类? 例如 new Component() { ID = 1, Name = “MOBO”, Category = new Lookup } 类别位总是会出现编译错误。 我有一个名为Category的属性,其类型为Lookup ,我希望通过实例化此属性 new Component() { ID = 1, Name = “MOBO”, Category = new Lookup }; 但我无法克服编译错误。

创建类型的变量以在C#中存储对象

我对编程有些新意,我对C#中的类,inheritance和多态有疑问。 在了解这些主题的同时,我偶尔会遇到类似这样的代码: Animal fluffy = new Cat(); // where Animal is a superclass of Cat* 这让我感到困惑,因为我不明白为什么有人会创建一个类型为Animal的变量来存储Cat类型的对象。 为什么一个人不会简单地写这个: Cat fluffy = new Cat(); 我确实理解为什么将子对象存储在父类型变量中是合法的,但不是为什么它有用。 是否有充分的理由将Cat对象存储在Animal变量与Cat变量中? 一个人可以举个例子吗? 我确定它与多态和方法覆盖(和/或方法隐藏)有关,但我似乎无法绕过它。 提前致谢!

全局类的实例

仍在努力了解C#(主要与C合作)。 我有一个类“设备”,并希望创建该类的实例,但也想全局访问实例,因为我在我的GUI方法中使用它们太多了。 public class Device { public string Name; public List models = new List(); public List revisions = new List(); … } 以某种方式在全球宣布: Device Device1 = new Device(); Device1.Name = “Device1”; 然后在WPF方法中访问它: private void DeviceViewItem_Selected(object sender, RoutedEventArgs e) { TreeViewItem selected = (TreeViewItem)sender; if (selected.Name == Device1.Name) { Device1.Models.Add(“something”); Device1.Revisions.Add(“something”); } 我一直在阅读关于单例模式,但看起来你必须创建一个单例类,但我的“设备”类被多次使用来创建许多设备。 也许我只是不明白这种模式。

类inheritance/方法覆盖

这是我第一次上课,所以请原谅我的无知。 我有一个Pet类是我的基类。 我有两个孩子class,狗和猫。 我想要做的是让Cat和Dog方法通过说“Woof!”来覆盖Pet方法。 和“喵!” 而不是说话。 然后在另一种forms,我必须按下按钮打印信息(名称,颜色和他们说话)。 class Pet { protected string name, color, food; public string Name { get { return name; } set { name = value; } } public string Color { get { return color; } set { color = value; } } public string Food { get { return food; […]

关于结构的问题

MSDN说,一个16字节或更少的类将更好地作为结构[引证]处理 。 这是为什么? 这是否意味着如果一个结构超过16个字节,它的效率低于一个类或它是否相同? 你如何确定你的class级是否在16字节以下? 是什么限制了结构体像一个类一样? (除了禁止无参数构造函数)