design相关内容

什么是使用了/ REF回访的好处?

我在做一个游戏使用XNA框架,所以我使用的向量操作很多功能。 (特别是 Vector2 (64位结构))。让我困扰的是,大多数的方法是用ref和out参数来定义。下面是一个例子: 无效敏(REF Vector2值1,参考Vector2值2,出Vector2结果) 这看起来有点怪过我。也有另一种最小这是比较明显的。 公共静态Vector2民(Vector2值1,Vector2值2); ..
发布时间:2015-11-25 15:02:41 C#/.NET

如何知道是否控制在设计时还是不是?

我有一个类(控制),实现ICustomTypeDescriptor,这是在设计时既使用和运行时间的PropertyGrid进行自定义。我需要公开在设计时不同的特性(标准控件,如 width属性,高度等),并在运行时,当PropertyGrid中被用在我的计划,以改变控件的其他属性。 我的code是这样的: 类MyControl:用户控件,ICustomTypeDescriptor { ..
发布时间:2015-11-25 15:00:06 C#/.NET

接口不应该有属性?

我的办公室的同事告诉我今天这是不好的做法,在接口的使用性能。他红,在某些MSDN文章(S),而我找不到(好,我是想在谷歌几次,大概跟错了键字)。他还告诉我,只有方法应该是在界面。 现在,我知道这是不严格的规则,因为很明显在.net中,你可以做财产签名接口和编译。 不过,这是真的是一个坏的实践/设计/ OOP?为什么? 他指出,以正确的文学或网络资源将是有益的了。 感谢 解决方案 我就加我 ..
发布时间:2015-11-25 14:56:59 C#/.NET

对于什么,我应该庆祝,如果他们已经是私有变量私有?

据我所知,在C#中的所有字段都是私有的默认情况下,如果没有标明,否则。 类Foo { 私人字符串吧; } 类Foo { 串吧; } 我想这两个声明都是平等的。 所以我的问题是:什么我应该标记私有变量私人如果他们已经是私人 解决方案 我一直在篱笆上有关这一点的同时。我曾经主张离开它隐含的,但现在我觉得我放倒走向摆明。 离职原因是隐含的: 这意味着有非私有成员 ..
发布时间:2015-11-25 13:34:48 C#/.NET

全球VS辛格尔顿在.NET

我这里有一个很常见的情况。而多年来,我还没有发现,如果我在做什么是对的行业standards.Consider它连接到数据库的应用程序,但其中连接字符串,而不是存储在某些文件/设置被传递作为命令行参数在启动或数据库浏览到在应用程序启动的时间。 那么有必要的地方保存连接字符串的应用程序的范围之内。我已经看到它做最常见的方式是一个模块或全局类get / set方法来保存连接字符串。另一种方式,我会做 ..
发布时间:2015-11-25 13:30:22 C#/.NET

如何创建一个用户界面设计工具?

我需要创建一个实用程序的用户都可以创建自己的数据输入画面。用户应该能够拖放正常的UI控件(文本框,单选,复选框,列表框,组合框和图片)的任何容器,并安排他们到适合自己的需要。用户必须能够改变的背景和默认值(文本框,组合框等)。应该有一个选项,保存为XML / XAML的设计的屏幕用于动态创建用户界面。 对如何处理这种情况下的任何建议都大大AP preciated。 解决方案 我也是工作的一个 ..
发布时间:2015-11-25 13:04:29 C#/.NET

WCF和接口继承 - 这是一个可怕的事是什么?

我的应用程序有2个“服务”,让我们说一个是基本的(整数)计算器,一个是浮点运算。我EX preSS这些像这样的接口: 公共接口IBasicCalculator { INT添加(INT A,INT B); } 公共接口IFloatingPointCalculator { 双增(双一,双二); } 我想通过WCF暴露这些。不幸的是WCF似乎很紧缚,你要公开必须通过一个单一的服务接​​口,每 ..
发布时间:2015-11-25 12:58:16 C#/.NET

码头,锚和流体布局在Windows窗体应用程序

所以,我一直在问到重新设计的旧的应用程序我几年前写的。 基本上,没有什么需要改变,所不同的是客户希望它是更流畅,并且它必须被全屏(没有可见的“窗口”)即无标题栏,只是一个无边界全屏窗口。 什么是最好的方式,以确保一切都保持流畅,我的意思是,我们如何才能确保一切似乎它应该,因为你知道,不同的分辨率,显示器尺寸等? 这是很容易在网页/ CSS,但是这不是我所做过的事情。大多数控件编程会在运行时创 ..
发布时间:2015-11-25 12:54:40 C#/.NET

DataSource对象或code-背后:哪个更好?

我知道这是一个可以提升不少有争议的问题,但我想知道是什么人认为使用对象数据源的各种利弊。我正在做的一个项目,现在与其他程序员谁的经验和舒适程度都植根于传统的ASP,而我不能确定它的方式是要 一)得到迅速完成任务 二)获得以最简单的完成任务 我们有一个很好的资源库层域对象能够自我验证,因此这些方法都在地方做任何消耗臭氧层物质的结合,或code-后面结合。 我不喜欢的消耗臭氧层物质的最明显的原因 ..
发布时间:2015-11-25 12:53:42 C#/.NET

在复杂的对象图跟踪更改

我开始思考跟踪断开连接的应用程序的变化在复杂的对象图。我已经发现了几个解决方案,但我想知道是否有任何的最佳做法或你用什么办法解决,为什么?我通过同样的问题这个问题涉及到.NET这样的答案与实施细节I $相关的.NET世界p $ PFER的答案,但我认为这是在其他平台上是相同的。 在我的案件的理论问题,在多层次的体系结构定义的(不一定是n层的时刻),如下所示: 使用ORM应对持久性存储库层(OR ..
发布时间:2015-11-24 21:01:14 C#/.NET

扩展方法VS静态工具类

我在寻找一些优点和缺点,使用了静态工具类扩展方法在C#应用程序。 例如,在扩展方法列加是通过调用类的名字,而不是像“StringUtils的”东西的舒适。但是一个反面的是,它可以模糊分辨什么是在框架中,什么不是行。 解决方案 我会说一个的 PRO 的是,它模糊了区别什么是在框架中,什么不是行:可以用自己的code一样自然框架code,对框架类型进行操作。 扩展方法不宜随意使用的,当然 - ..
发布时间:2015-11-24 20:51:15 C#/.NET

何时不应使用.NET中的线程池?

我要当不可以使用线程池在.net中? 它看起来像最好的选择是使用一个线程池,在这种情况下,为什么它不是唯一的选择? 什么是您的经验解决此问题? 解决方案 为什么我不会用的唯一原因线程池便宜的多线程是,如果我需要… interract与运行(例如,将其杀死)的方法 运行$ C $在 STA线程 C(这发生在我身上) 保持线程活着后,我的申请已去世(线程池线程后台线程) 在情况 ..
发布时间:2015-11-24 20:44:59 C#/.NET

是C#的部分类不好的设计?

我想知道为什么“局部类”的概念,甚至存在于C#/ VB.NET。我工作的一个应用程序,我们正在读一(其实是很好的)书初步认识到,我们正在实施工作的开发平台。在这本书中,他提供了一个大code基/周围的平台API的包装,并解释他是如何开发它,因为他教这个平台开发不同的主题。 不管怎样,长话短说 - 他使用部分类,所有的地方,作为一种假的多重继承在C#中(IMO)。为什么他没有只是分裂类成多个的和使 ..
发布时间:2015-11-24 20:39:38 C#/.NET

框架和体系结构之间的区别是什么?

我想知道的框架和体系结构之间的差异。 例如: DotNetNuke的的框架和 MVC 的架构。 因此​​,如果我们把两者的这是一个例子,谁能告诉我差他们之间? 想知道哪一个是使用的时间和地点? 这在用户需求的满意度方面还是不错的? 解决方案 让我举例说明的区别。 框架: 架构: ..
发布时间:2015-11-24 15:56:43 C#/.NET

为什么不ICollection的< T>实现ICollection的?

的IEnumerable< T> 工具的IEnumerable 但的ICollection< T> 不执行的ICollection 什么是这样做的理由和/或说这只是一个监督? 解决方案 正如尼克说,的ICollection 是pretty的无用。 这些接口都是类似的只有他们的名字, CopyTo从和计数都仅有一个共同的特性。 添加,删除,清除,包含和的IsRead ..
发布时间:2015-11-24 15:40:35 C#/.NET

书的建议书的WinForms设计放大器;编程

我在找一本书或关于以下主题一个很好的资源: 在Windows上的最佳实践窗体设计(的这样的最好的方式来设计的图形用户界面 - 使用anchors-,使用默认的字体,避免改变颜色等。的) 咨询有关通用GUI的陷阱(的易用性,可访问性,兼容性的) 基本上,我有一个WinForms应用程序,我一直有问题,如: 在DPI的变化原因的问题在GUI 在WebBrowser控件抢断焦点 Ctrl + ..
发布时间:2015-11-24 15:26:15 C#/.NET

有什么用string.Clone的()?

也有code两个例子: #1 字符串STR1 =“你好”; 字符串STR2赛车= STR1; //参照相同的字符串 STR1 =“再见”; //新的字符串创建 和#2 字符串STR3 =“你好”; 字符串STR4 =(字符串)str3.Clone(); //引用相同的字符串 STR3 =“再见”; //新的字符串创建 看起来他们是一样的,不是吗?所以有什么好处使用的clo ..
发布时间:2015-11-24 15:08:00 C#/.NET

NHibernate的:原因压倒一切的Equals和GetHash code

是否有任何理由相等于或GetHash code,应在实体使用NHibernate时重写?而在这情况下是这些理由是否有效? 这可以在网上找到一些原因: 支持延迟加载。比较 通过默认值等于代理对象 方法可能会导致意外的错误。 但是,这应该可以解决 标识映射(它真的是在 很多情况下),不应该吗?当工作从单一的会议实体都应该可以正常工作,即使没有压倒一切的Equals / GetHash code。在 ..
发布时间:2015-11-24 15:00:56 C#/.NET