我对C#中的动态特性感到非常兴奋(C#4动态关键字 - 为什么不呢?),特别是因为在我的代码的某些库部分我使用了很多反射.
我的问题是双重的:
1."动态"取代泛型,如下面的情况?
泛型方法:
public static void Do_Something_If_Object_Not_Null<SomeType>(SomeType ObjToTest) {
//test object is not null, regardless of its Type
if (!EqualityComparer<SomeType>.Default.Equals(ObjToTest, default(SomeType))) {
//do something
}
}
Run Code Online (Sandbox Code Playgroud)
动态方法(??):
public static void Do_Something_If_Object_Not_Null(dynamic ObjToTest) {
//test object is not null, regardless of its Type?? but how?
if (ObjToTest != null) {
//do something
}
}
Run Code Online (Sandbox Code Playgroud)
2."动态"现在是否允许方法返回匿名类型,如下面的情况?:
public static List<dynamic> ReturnAnonymousType() {
return MyDataContext.SomeEntities.Entity.Select(e => e.Property1, e.Property2).ToList();
}
Run Code Online (Sandbox Code Playgroud)
很酷,欢呼
编辑:
仔细考虑了我的问题,并根据答案,我看到我完全搞砸了主要的通用/动态问题.他们的确完全不同.所以是的,感谢所有的信息.
那么第2点怎么样?
我需要JavaScript代码来遍历HTML元素中的填充属性.
这个Element.attributes ref说我可以通过索引访问它,但是没有指定它是否得到很好的支持并且可以使用(跨浏览器).
还是其他任何方式?(不使用任何框架,如jQuery/Prototype)
在我的PHP代码中,我的变量"$ postedDate"中有一个日期.
现在我希望在7天,15天,1个月和2个月过后获得日期.
我应该使用哪个日期功能?
输出日期格式应为美国格式.
我正在为C#.NET 3.5中的自定义ConfigurationHandler编写自定义ConfigurationElementCollection,并且我希望将IEnumerator公开为通用IEnumerator.
实现这一目标的最佳方法是什么?
我目前正在使用该代码:
public new IEnumerator<GenericObject> GetEnumerator()
{
var list = new List();
var baseEnum = base.GetEnumerator();
while(baseEnum.MoveNext())
{
var obj = baseEnum.Current as GenericObject;
if (obj != null)
list.Add(obj);
}
return list.GetEnumerator();
}
干杯
我不是指二进制搜索树.
例如,如果我将值1,2,3,4,5插入到二叉搜索树中,则inorder遍历将给出1,2,3,4,5作为输出.
但是如果我将相同的值插入到二叉树中,则inorder遍历应该给出4,2,5,1,3作为输出.
可以使用动态数组创建二叉树,其中对于索引n中的每个元素,2n + 1和2n + 2分别表示其左和右子节点.
因此,表示和级别顺序遍历在这里非常容易.
但我认为,有序,下订单,预订很难.
我的问题是如何创建二叉树像二叉搜索树.即.有一个包含数据的树类,左右指针而不是数组.这样我们就可以递归地进行遍历.
我们正在开发一个使用Oracle 9i作为后端的Visual Studio.NET 2008应用程序.存储过程的使用是否比Inline SQL更快?这是与我的合作程序员的辩论.
我们正在使用Oracle的ODP.NET(Oracle Data Provider for .NET).
谢谢.
我已经采取了我的第一个婴儿步骤进入单元测试,并且由于对域的更好理解,已经对已破坏单元测试的域模型进行了更改.所以这提出了一个问题:
什么时候允许更改以前的工作单元测试?
我想我不得不问这个问题,我错过了单元测试的一个重要方面......
c# ×3
sql ×2
.net ×1
binary-tree ×1
bstr ×1
com ×1
com-interop ×1
date ×1
dom ×1
dynamic ×1
enumeration ×1
generics ×1
html ×1
ienumerator ×1
interop ×1
java ×1
javascript ×1
odp.net ×1
oracle ×1
php ×1
reflection ×1
unit-testing ×1
wait ×1
windows ×1