Unable to modify C# List<T>

Environment

  • Pythonnet version: 2.4.0
  • Python version: 3.6
  • Operating System: windows 10

Details

I have a C# class like this:

public class X
{
  public List<string> list;
}

I'm unable to do useful stuff with X.list due to the automatic value conversion of pythonnet.

Preface:

pylist=["a", "b", "c"]
x=X()
x.list=System.Collections.Generic.List[str]()

Doesnt work:

x.list=System.Collections.Generic.List[str](pylist)

Doesnt work:

for i in pylist:
  x.list.Add(i)

Doesnt work:

for i in pylist:
  x.list.append(i)

x.list is always empty except for the .Add call, with throws Exception cause the value is converted to python list. How do I modify a C# List in python?