如何在 asp.net 的 Web 表单中调用控制台应用程序功能

How to call Console Application functions in Web forms in asp.net

我有一个包含两个项目的解决方案,即 Web 应用程序项目和控制台应用程序。

我在控制台应用程序中调用 web API(在 Program.cs class 中)并将输出存储在列表中,我想在我的 web 表单中显示该列表Web 应用程序项目。如何调用 Program.cs 中的函数到我的网络表单以显示结果?

或者是否有更简单的解决方案?

我假设您从控制台应用程序调用的 Web API 是一个外部应用程序(不是您的 Web 应用程序的一部分)。

我会在一个单独的项目中将来自 Web API 的逻辑读取分开,并在控制台和 Web 应用程序中使用它。

您可以参考以下步骤在Web表单中调用控制台应用功能。

首先,请在您的控制台应用程序中定义 program.cs。

namespace TestConsole
{
    public class Program
    {
        static void Main(string[] args)
        {

        }

        public static List<string> Liststring()
        {
            List<string> list = new List<string>();
            list.Add("test1");
            list.Add("test2");
            list.Add("test3");
            list.Add("test4");
            return list;

        }
    }
}

其次,在网络应用中,请点击添加-引用->项目->选择控制台应用。

三、请在代码顶部加上using语句

最后,您可以使用以下代码在下拉列表中填充一个列表。

using System;
using System.Web.UI;
using TestConsole;


namespace WebApplication1
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                Dropdownlist1.DataSource = Program.Liststring();
                Dropdownlist1.DataBind();
            }
      

        }
    }
}

结果: