如何在C#中将类类型另存为变量?

欧米茄

在C#中,您可以做这样的事情吗?

type typeOfInt = type(int);
int x = (typeOfInt)1;

基本上,我想将类型存储为变量,因此可以将变量用作类型转换。我尝试这样做是因为在我的参数多态函数中,变量可能是2种类型中的1种。这两种类型都具有我想使用的相同方法,但是由于它属于变量类型,所以我不会使用它。

    public static void SetFolderOrderValue<T>(T item, int value, Report reportObject)
    {
        if (!item.Exists)
        {
            reportObject.Log("The folder \"" + item.Name + "\" does not exist.");
            return;
        }
        try
        {
            item.SetProperty(folderOrderProperty, value);
            item.Update();
        }
        catch (SPException ex)
        {
            reportObject.Log("An error occurred when saving changes to the folder \"" + item.Name + "\". Maybe due to concurrent changes from another user. Please try again after a minute.\n" + Report.GetErrorInfo(ex));
        }
        catch (Exception ex)
        {
            reportObject.Log("An error occured with \"" + item.Name + "\":\n" + Report.GetErrorInfo(ex));
        }
    }

如果我至少可以将强制类型转换存储为值,那么我可以在函数中传递另一个布尔值,说明它是2种类型中的哪一种。

提格兰

您正在谈论多态性,因此请使用它。

如果您有两种具有相同通用方法的类型,并且有一个函数或一组函数要对其执行操作,请定义一个interface描述这两种类型之间共享的方法集的,并:

如果你在谈论的类型命名SPFileSPFolder

public class SPFile : IMyNewInterface  {
   .....
}

public class SPFolder : IMyNewInterface  {
   ...
}

public static void SetFolderOrderValue<T>(T item, int value, 
              Report reportObject) where T : IMyNewInterface    {
     ...
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在C#中将列表中的元素数量另存为变量?

如何在Jinja2 Ansible中将嵌套字典另存为变量?

如何在php中将json字节[]另存为pdf

如何在python中将列表另存为numpy数组?

如何在Chrome中将网页另存为MHT?

如何在Eclipse中将工作区另存为...?

如何在Redis中将列表另存为值

如何在Swift中将数组另存为json文件?

如何在python中将词云另存为.png?

如何在SQL中将数据框另存为表

如何在Firestore网站中将值另存为double?

如何在 UWP 中使用 C# 将网页另存为 html 文件?

如何在Notepad ++中的“另存为”对话框中编辑“另存为类型:”列表?

QT与C ++:如何实现另存为

在C ++中将类(带有Vector成员)另存为二进制文件

在Python中将变量另存为无括号的列

如何在C#中使用SaveFileDialog将字节数组另存为png文件在磁盘上?

以编程方式在C#中将SSRS报告另存为PDF

如何在 VBA 中将公式另存为字符串

如何在Spark中将复杂的json或复杂的对象另存为Parquet?

如何在MATLAB中将3D动画线另存为视频或gif

如何在Excel中将数字另存为字符串?

如何在 Apache POI 中将 xslm 文件另存为 xslx

如何在BigQuery中将查询另存为分区表?

如何在Go中将整个字符串另存为txt文件?

如何在Unity3d中将资产另存为fbx?

如何在2018年的Julia中将矩阵另存为图像

如何在GIMP 2.8.16中将gif的图层另存为单独的文件?

如何在scala spark中将字符串另存为json