簡體   English   中英

DotNetBrowser 調用 JS 函數並從 C# 返回值

[英]DotNetBrowser calling a JS function and returning a value from C#

我看到您可以在 .NET 中啟動函數調用並返回值的選項,但我沒有看到您可以在調用 .NET 函數的 javascript 中啟動函數調用然后將值返回給 javascript 的選項,類似於我使用 ASP.NET 或訪問 Web API 時會發生的情況。

所以基本上這就是我正在做的事情。 我有一個模式,當用戶點擊保存游戲時會彈出。 他們輸入保存游戲文件的名稱,單擊“確定”,它會調用一個 .NET 函數來檢查數據庫以查看它是否是重復的保存游戲文件。 如果是,它應該返回“錯誤!重復的文件名!請選擇一個唯一的文件名。” 如果它是唯一的,它將信息保存到數據庫並返回“成功保存游戲!” 消息,等待 2 秒鍾,然后重定向到主儀表板頁面。

在 .NET 應該返回值之前,我一切正常。 目前,模態窗口只是坐在那里,沒有任何東西返回給 JS。

我像往常一樣通過調用 .Net 函數並使用 .then(function (response) 來獲取響應值來設置它,但它以未定義的形式返回。

我確定必須有一種方法可以做到這一點,我只是沒有看到文檔中的方法,因為它只顯示了從 .NET 啟動函數調用時如何做到這一點......

編輯:我的天啊...我剛剛意識到這是一個如此愚蠢的問題...我已經在從數據庫中返回查找...答案是將它設置為一個變量而不是嘗試將函數鏈接到結束。

這個:

var value = window.CRUD.Save(fileName, model);
if(value === "Duplicate!") ....

代替:

    window.CRUD.Save(fileName, model).then(function(response) {
});

以下鏈接中的文章解釋了如何從 JavaScript 調用 .NET: https : //dotnetbrowser.support.teamdev.com/support/solutions/articles/9000109869-calling-net-from-javascript

感謝您將問題的答案添加為更新。

暫無
暫無

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

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