как отправить тип данных в качестве параметра - PullRequest
0 голосов
/ 09 апреля 2020

я работаю над проектом winform и хочу узнать, как я могу отправить тип данных в функцию и проверить, является ли тип переменной внутри этой функции того же типа, который я отправил в функцию

, которую я использую таким образом, но я получил ошибку

public bool check_with_MESSAGE(ref dynamic TX, Type TP, string MESSAGE)
    {
        if (TX is TP)
        {
            ERROR = new support_forms.ERROR_MESSAGE_FRM(MESSAGE);
            return true;
        }
        else
        {
            return false;
        }
    }

1 Ответ

0 голосов
/ 09 апреля 2020
class SomeClass
{
    public bool check_with_MESSAGE(ref dynamic TX, Type TP, string MESSAGE)
    {
        if (TX.GetType() == TP)
        {
            //Whatever this is...
            //ERROR = new support_forms.ERROR_MESSAGE_FRM(MESSAGE);
            return true;
        }
        else
        {
            return false;
        }
    }
}

class Program
{
    // Proof
    static void Main(string[] args)
    {
        var someClass = new SomeClass();

        dynamic instance = "This is a string";

        var isString = someClass.check_with_MESSAGE(ref instance, typeof(string), "Some message");

        var isInt = someClass.check_with_MESSAGE(ref instance, typeof(int), "Some message");

        Console.WriteLine($"instance is string: {isString}, instance is int: {isInt}");

        Console.ReadLine();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...