2013-08-29 85 views
0

我只是想問問,是有可能,我mvc4將能夠讀取我的Windows窗體應用程序的文本框?MVC 4和Windows窗體

它去這樣, 1. Windows窗體應用程序有一個文本框和提交按鈕 2.我輸入一個值上的文本框,然後按提交按鈕 3. MVC 4應用程序獲取數據並顯示它在文本框中

是這甚至可能嗎?

+0

只是爲了澄清,您正在Web服務器上運行WinForms應用程序? – Groo

+0

遺憾的混亂,我的WinForms只運行桌面,我的MVC4運行在剛剛的locahost,它們都在同一時間運行,因爲我需要傳送的數據。 –

+0

通常,如果你有一個web應用程序,那麼最好使用web服務(比如[Anuraj](http://stackoverflow.com/a/18507822/69809)寫在下面)。這樣,您可以將您的網絡應用程序移動到第三方服務器,並使所有工作都以相同的方式進行。 – Groo

回答

2

是的,它是可能的,你可以做一個HTTP投遞到一個控制器動作或使用視圖HttpWebRequest類。

+0

不太熟悉的web服務,虐待讀取一些關於此webservice,謝謝! –

0

我會做到這一點(雖然我希望有更簡單的方法)的方法是在你的MVC應用程序有一個事件聽者所監聽到數據庫。然後,您可以使用相關信息更新此數據庫窗體,並讓您的事件偵聽器對其進行響應。你很可能想在你的MVC應用程序中使用一些AJAX來使它異步。

+1

我看到謝謝!我想我最好還是在mvc 4上學習更多,還有很多我還不知道,比如事件監聽器。謝謝 –

0

是的,這是可能的。通過使用表單應用程序中的WebRequest就像下面的例子。它來自VB.NET應用程序。請求數據到Web服務器。我希望你能理解並嘗試爲自己創造一個。

Public Function SENDSMS(ByVal finsysid As Integer, ByVal smsto As String, ByVal msg As String) As Boolean 
    On Error GoTo ErrorHandler 
    SENDSMS = False 
    Dim request As System.Net.WebRequest = System.Net.WebRequest.Create("http://www.infodev.com/sms/sms4digit.php") 
    request.Method = "POST" 
    Dim postData As String 
    postData = "finsysid=" & finsysid & "&to=" & smsto & "&msg=" & msg 
    Dim byteArray As Byte() = Encoding.UTF8.GetBytes(postData) 
    request.ContentType = "application/x-www-form-urlencoded" 
    request.ContentLength = byteArray.Length 
    Dim dataStream As Stream = request.GetRequestStream() 
    dataStream.Write(byteArray, 0, byteArray.Length) 
    dataStream.Close() 
    Dim response As WebResponse = request.GetResponse() 
    dataStream = response.GetResponseStream() 
    Dim reader As New StreamReader(dataStream) 
    Dim responseFromServer As String = reader.ReadToEnd() 
    reader.Close() 
    dataStream.Close() 
    response.Close() 
    SENDSMS = True 
    'Return (responseFromServer) 

    Error_Desc = Replace(responseFromServer, "'", "-") 
    SENDSMS = InStr(responseFromServer, "success", CompareMethod.Text) 

    Exit Function 
ErrorHandler: 
    MsgBox(Err.Description, , Err.Number) 
    Exit Function 
    Resume 
End Function 
+0

謝謝生病嘗試學習這一個! –