Аргументы типа для метода не могут быть выведены из использования

Я получаю следующее сообщение об ошибке с кодом ниже. Я не уверен, связано ли это с ядром Grasshopper или я не пишу DataAccess.GetDataList() метод правильно. Я надеюсь, что вы можете помочь.

The type arguments for method 'Grasshopper.Kernel.IGH_DataAccess.GetDataList<T>(int, System.Collections.Generic.List<T>)' cannot be inferred from the usage. Try specifying the type arguments explicitly.

код:

protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
{
pManager.AddTextParameter("SomeString", "SS", "Send Some String Somwhere", GH_ParamAccess.list); //0
}
protected override void SolveInstance(IGH_DataAccess DA)
{

string SomeString = default(string);
DA.GetDataList(0, ref SomeString);

if (!DA.GetDataList(0, ref SomeString)) return;

}

1 ответ

Решение

Ошибка говорит, что функция требует int и List<T> но вы поставляете int и string, Вам также не нужно ref модификатор.

Вам нужно сделать что-то вроде этого:

List<string> someStrings = new List<string>();
if(! DA.GetDataList(0, someStrings)) return;
Другие вопросы по тегам