[英]Calling a C# library function with out parameters in javascript
如果我有一個帶有out參數的C#函數,則從javascript調用時無法獲取out參數。 這可能嗎?
例如...
public class Test
{
public bool function doSomething(string txt, out string retTxt)
{
...
retTxt = "some return value";
return true;
}
}
Javascript代碼
var outStr;
var ret = testInstance.doSomething("instr", outStr);
msdn官方文檔將out參數修飾符定義為“導致參數通過引用傳遞”。 通過引用傳遞將意味着您正在傳遞變量的內存位置,這在客戶端/服務器情況下是不可能的。
以這種方式使用out參數不是一個好主意。 如果您調用一個方法,則希望它能夠完成其工作,如果不能,則應拋出該方法,但是,如果您確實需要該bool
則可以將輸出包裝到一個類中並返回它。 在這種情況下,如果使用dot net 4.0或更高版本,則可以使用匿名類型。
public class Test
{
public object doSomething(string txt)
{
...
return new
{
text = "some return value",
success = true
};
}
}
var result = testInstance.doSomething("instr");
// result.text
// result.success
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.