我有几个类,都来自相同的基类型.
class basetype{}
class TypeA : basetype{}
class TypeB : basetype{}
...
Run Code Online (Sandbox Code Playgroud)
其中许多存储在列表中.
List<basetype> myObjects
Run Code Online (Sandbox Code Playgroud)
与往常一样,这些类型中的每一种都必须以不同方式处理.现在我有几种处理它们的方法,以及一种将basetype作为参数的方法.
HandleTypes(TypeA obj){}
HandleTypes(TypeB obj){}
HandleTypes(basetype obj)
Run Code Online (Sandbox Code Playgroud)
目前,我的HandleAllTypes看起来像这样:
string name = obj.GetType().Name
switch(name)
{
case "TypeA":
return HandleTypes(obj as TypeA);
case "TypeB":
return HandleTypes(obj as TypeB);
....
}
Run Code Online (Sandbox Code Playgroud)
现在这是废话.有没有像这样的方式
HandleTypes(obj ?"as derived type"?)
Run Code Online (Sandbox Code Playgroud)
通过MSDN和其他来源搜索,一无所获.
我有一个Excel表格,我已经从我的代码中命名了我必须填写的单元格.命名字段的原因是客户可以重新排列单元格.
为了使它更清楚:我使用下面显示的字段命名单元格.

我现在的问题是我不知道如何使用office interop从C#中解决这些字段.
Range r = Sheet.get_Range("M_Leitung", Type.Missing);
Run Code Online (Sandbox Code Playgroud)
不起作用.由于我没有定义任何范围,只需要插入值的单个单元格,我需要一个返回指定单元格的函数.