小编mdr*_*den的帖子

"ReferenceEquals(myObject,null)"比"myObject == null"更好吗?

我有一个同事,他喜欢写下他的空检查,如下所示:

if (!ReferenceEquals(myObject, null))
Run Code Online (Sandbox Code Playgroud)

另一方面,我觉得这种语法很难阅读并且更喜欢:

if (myObject != null)
Run Code Online (Sandbox Code Playgroud)

我发现一些文章和堆栈溢出问题讨论了关于运算符重载的ReferenceEquals的优点,但是在运算符重载方案之外,ReferenceEquals vs ==有什么好处?

.net c# vb.net

41
推荐指数
3
解决办法
1万
查看次数

WCF对象设计 - OOP与SOA

在WCF/SOAP世界中处理多态业务对象的正确方法是什么?

在我看来,SOA和OOP彼此不一致 - 要公开一个干净的WSDL,你需要具体的对象,通常甚至不利用继承.另一方面,可能在底层系统中,您需要遵循适当的OO设计.

人们通常在这做什么?构建一组WCF合同对象,放弃OOP原则,然后转换为实际逻辑层中的另一组对象?

oop wcf soa design-patterns

6
推荐指数
1
解决办法
2601
查看次数

在VB.Net中构造一个对象并调用一个没有赋值的方法

我不完全确定C#的作用是什么,所以我没有运气搜索VB.Net等效语法(如果它存在,我怀疑它可能没有).

在c#中,您可以这样做:

public void DoSomething() {
    new MyHelper().DoIt(); // works just fine
}
Run Code Online (Sandbox Code Playgroud)

但据我所知,在VB.Net中,您必须将辅助对象分配给局部变量,否则您只会收到语法错误:

Public Sub DoSomething()
    New MyHelper().DoIt() ' won't compile
End Sub
Run Code Online (Sandbox Code Playgroud)

这是我每天都在混合语言项目中遇到的好奇心之一 - 通常有一个VB.Net等价物,它使用的语法不那么明显.任何人?

vb.net c#-to-vb.net

4
推荐指数
1
解决办法
726
查看次数

标签 统计

vb.net ×2

.net ×1

c# ×1

c#-to-vb.net ×1

design-patterns ×1

oop ×1

soa ×1

wcf ×1