0

所以我有 ac# 控制台项目,我在项目解决方案中添加了一个 html 文件。我现在需要通过单击 button1 将 text1 和 text2 中的数据获取到 program.cs 中的两个变量,然后将数组发送回 javascript 变量 data1、data2 等...

    <!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title></title>
    <style type="text/css">
        #Button1 {
            width: 111px;
        }
    </style>

        <script type="text/javascript" src="jquery.min.js"></script>
        <script type="text/javascript" src="jquery.timer.js"></script>
        <script type = "text/javascript" src = "ajax.js"></script>


</head>
<body>


    <script type ="text/javascrip">
    var data1;
    var data2;
    var data3;
    var data4;
    var data5;
        </script>
    <p>
        <form id="form1" method="post" action="program.cs">
        <input id="Button1" type="submit" value="button" />
        <input id="Text1" type="text" />
        <input id="Text2" type="text" />
            </form>
    </p>
    <p>
        &nbsp;</p>


</body>
</html>

这甚至可能吗?

4

3 回答 3

1

您不能像这样将 html 表单数据发布到控制台应用程序的 program.cs。

您可以做的一件事是让 SignalR 集线器在您的控制台应用程序上运行,并让 SignalR javascript 客户端调用方法直接到该控制台应用程序的集线器。

有关如何在控制台应用程序上托管 SignalR,请参阅 SignalR 的自托管教程:

http://www.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/tutorial-signalr-20-self-host

希望有所帮助。

于 2013-11-06T14:54:33.093 回答
1

你可以做WCFself-hosting

以下是一些相关链接:

但是为了更有效的解决方案,您可能应该查看 node.js。

于 2013-11-06T15:34:49.000 回答
0

您可能需要在您的 C# 代码中包含一个装饰为 WebService 的函数。

然后为简单起见使用 ajax 或 jQuery Ajax 并调用 WebService 函数。它应该进行您需要的计算,并返回一些值或值数组。

这就是整个概念。希望能帮助到你。

你也可以在你的 HTML 中隐藏一些文本框,在你完成服务器端的计算后,为它们分配你想要的值,然后用 Javascript 获取它们。这也是可能的,但可能不是那么优雅的解决方案。

这是一个来自 jQuery 网站的示例,说明如何将 Ajax 与 jQuery 结合使用:

$.ajax({
  url: "http://fiddle.jshell.net/favicon.png",
  beforeSend: function( xhr ) {
    xhr.overrideMimeType( "text/plain; charset=x-user-defined" );
  }
})
  .done(function( data ) {
    if ( console && console.log ) {
      console.log( "Sample of data:", data.slice( 0, 100 ) );
    }
  });

请访问http://api.jquery.com/jQuery.ajax/并查看文档。

于 2013-11-06T14:48:00.320 回答