如何将我的代码从 Program.cs 连接到我的 Razor 页面按钮?
How Can I Connect my code from Program.cs to My Razor Page Button?
我使用 ASP.NET Razor Pages 构建了一个 Web 应用程序,我试图在单击按钮时 运行 我的 progam.cs 代码。我有什么想法可以做到这一点吗?
我创建了按钮并确保它能正常工作,我只是想知道如何将它连接到我在 program.cs
中的代码
Index.cshtml
http://google.com'" type="button"> Google
//Index.cshtml.cs
public class 索引模型:页面模型
{
私人只读 WebApplication2.Models.AppDbContext2 _context;
public IndexModel(WebApplication2.Models.AppDbContext2 context)
{
_context = context;
}
public IList<Job> Job { get;set; }
public async Task OnGetAsync()
{
Job = await _context.Job.ToListAsync();
}
}
我还没有结果,但我想要 运行 主要方法中的一些代码的按钮,而不是全部
您通常不会尝试从 Web 应用程序中的 program.cs 直接 运行 编码。通常您会使用像 MVC(模型、视图、控制器)这样的模式来处理信息传输。在 MVC 的情况下,您的视图会将信息发送回您的控制器。然后您的控制器可以根据需要使用该信息。
这是关于 .net 核心中 MVC 的 Microsoft 文档的 link。
https://docs.microsoft.com/en-us/aspnet/core/mvc/overview?view=aspnetcore-2.2
此外,它还有助于您熟悉 GET、POST、PUT、DELETE 等 http 动词以及如何使用它们。您可以使用 HTML 表单元素来执行其中的大部分操作。这是一个 Link 表单示例。
https://www.w3schools.com/html/html_forms.asp
另一种处理将数据发送回控制器的方法是使用 JavaScript。它比使用表单稍微复杂一些,但更加灵活。这是 link 到 javascript 获取 API。
https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch
这是一个简单的例子 -
这是一个简单的表单,link发送到我的客户控制器然后激活位置或日期方法。
<form action="Customer/Location">
<input type="submit" class="SelectByLocation SelectBy" value="Location" />
</form>
<div id="CustApptTypeSelectScreen" class="SelectApptType">
<form action="Customer/Location">
<input type="submit" class="SelectByLocation SelectBy" value="Location" />
</form>
<form action="Customer/Date">
<input type="submit" class="SelectByDate SelectBy" value="Date" />
</form>
</div>
这是带有 Location() 函数的控制器本身。当您单击位置按钮时,它将转到该功能并 运行 它。
public class CustomerController : Controller
{
public IActionResult Index()
{
return View();
}
public IActionResult Date()
{
return View("Date");
}
public IActionResult Location()
{
doSomethingFunction();
return View("Location");
}
}
希望这里有所帮助。
-祝你好运。
我使用 ASP.NET Razor Pages 构建了一个 Web 应用程序,我试图在单击按钮时 运行 我的 progam.cs 代码。我有什么想法可以做到这一点吗?
我创建了按钮并确保它能正常工作,我只是想知道如何将它连接到我在 program.cs
中的代码Index.cshtml http://google.com'" type="button"> Google
//Index.cshtml.cs public class 索引模型:页面模型 { 私人只读 WebApplication2.Models.AppDbContext2 _context;
public IndexModel(WebApplication2.Models.AppDbContext2 context)
{
_context = context;
}
public IList<Job> Job { get;set; }
public async Task OnGetAsync()
{
Job = await _context.Job.ToListAsync();
}
}
我还没有结果,但我想要 运行 主要方法中的一些代码的按钮,而不是全部
您通常不会尝试从 Web 应用程序中的 program.cs 直接 运行 编码。通常您会使用像 MVC(模型、视图、控制器)这样的模式来处理信息传输。在 MVC 的情况下,您的视图会将信息发送回您的控制器。然后您的控制器可以根据需要使用该信息。 这是关于 .net 核心中 MVC 的 Microsoft 文档的 link。 https://docs.microsoft.com/en-us/aspnet/core/mvc/overview?view=aspnetcore-2.2
此外,它还有助于您熟悉 GET、POST、PUT、DELETE 等 http 动词以及如何使用它们。您可以使用 HTML 表单元素来执行其中的大部分操作。这是一个 Link 表单示例。 https://www.w3schools.com/html/html_forms.asp
另一种处理将数据发送回控制器的方法是使用 JavaScript。它比使用表单稍微复杂一些,但更加灵活。这是 link 到 javascript 获取 API。 https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch
这是一个简单的例子 -
这是一个简单的表单,link发送到我的客户控制器然后激活位置或日期方法。
<form action="Customer/Location">
<input type="submit" class="SelectByLocation SelectBy" value="Location" />
</form>
<div id="CustApptTypeSelectScreen" class="SelectApptType">
<form action="Customer/Location">
<input type="submit" class="SelectByLocation SelectBy" value="Location" />
</form>
<form action="Customer/Date">
<input type="submit" class="SelectByDate SelectBy" value="Date" />
</form>
</div>
这是带有 Location() 函数的控制器本身。当您单击位置按钮时,它将转到该功能并 运行 它。
public class CustomerController : Controller
{
public IActionResult Index()
{
return View();
}
public IActionResult Date()
{
return View("Date");
}
public IActionResult Location()
{
doSomethingFunction();
return View("Location");
}
}
希望这里有所帮助。 -祝你好运。