Criando um Int32 Cull Nullable dentro do Python (usando Python.NET) para chamar um método C # com um argumento int opcional
estou a usarPython.NET carregar um assembly C # para chamar o código C # do Python. Isso funciona muito bem, no entanto, estou tendo um problema ao chamar um método parecido com este:
Um método dentro de Our.Namespace.Proj.MyRepo:
OutputObject GetData(string user, int anID, int? anOptionalID= null)
Posso chamar o método para o caso em que o terceiro argumento opcional está presente, mas não consigo descobrir o que passar para o terceiro argumento para corresponder ao caso nulo.
import clr
clr.AddReference("Our.Namespace.Proj")
import System
from Our.Namespace.Proj import MyRepo
_repo = MyRepo()
_repo.GetData('me', System.Int32(1), System.Int32(2)) # works!
_repo.GetData('me', System.Int32(1)) # fails! TypeError: No method matches given arguments
_repo.GetData('me', System.Int32(1), None) # fails! TypeError: No method matches given arguments
O Bloco de notas iPython indica que o último argumento deve ser do tipo:
System.Nullable`1[System.Int32]
Só não sei como criar um objeto que corresponda ao caso Nulo.
Alguma sugestão sobre como criar um objeto nulo reconhecido em C #? Eu supus que passar o nativo Python None funcionaria, mas não.