簡體   English   中英

使用帶C#調用的可選參數調用Visual Basic函數

[英]Calling a Visual Basic function with optional parameters with a C# call

我使用客戶端C#程序在不同的層上與Visual Basic代碼交互。 Visual Basic函數簽名如下所示:

Public Sub toggleExclusion( _
    ByVal mouse As Double, _
    ByVal study As Integer, _
    Optional ByVal box As Integer = 0)

當我從C#中調用它時:

_obj.toggleExclusion(mouse, study)

我收到一個錯誤,說沒有重載的toggleExclusion方法有兩個參數。 為什么?

這取決於C#版本。 較舊的C#版本尚不支持可選參數 - 您始終需要指定所有參數。 由於也支持C#4可選參數。

一種解決方法是傳遞可選參數 - 因為它有一個默認值,如果你只是傳遞它就沒有損失。

您可以使用System.Reflection.Missing.Value 我不確定它是否適用於Visual Basic調用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM