![]() |
1
5
有什么理由不根据SQL Server版本简单地为接口设置别名?
|
![]() |
2
1
不幸的是,你想做的事行不通。 问题是底层对象实际上并没有实现您的接口。它只实现特定的版本化接口,即您试图摆脱的接口。
在C语言中,最好的方法是对接口进行别名处理,但不幸的是,这必须在需要使用此接口的每个.cs文件的顶部进行。
有没有可能创建一个包装器对象来实现您的接口呢?然后您自己的对象将实现新接口,并将每个调用传递回基础对象上的相关方法/属性。在这个物体上你可以做各种各样的
或者,您可以创建两个类,它们都实现了您的新接口,并使用IoC容器或类似的容器来请求“实现此接口的对象”,而不知道您实际上在和这两个类中的哪一个说话。 |
![]() |
3
0
我想说,这里最好的选择是显式定义IDTSComponentMetaData,而不是从IDTSComponentMetaData90派生它。然后可以创建两个不同的类,通过将方法调用转发到适合SQL Server版本的COM接口来实现接口。 |
![]() |
4
0
我相信COM接口的名称其实并不重要,所以创建自己的COM接口也可能有用(尽管我无法测试它)。
|
![]() |
A B · C#Excel自动调整列避免长文本时出错 7 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 7 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 7 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 7 月前 |