asp网站关键字,专业做鞋子网站有哪些,微机做网站的软件,什么叫社交电商平台1. 服务端代码#xff08;C##xff09;
1.1 创建ASP.NET Core Web API项目 打开Visual Studio 2022。 选择“创建新项目”。 选择“ASP.NET Core Web API”模板#xff0c;点击“下一步”。 输入项目名称#xff08;如OracleApi#xff09;#xff0c;选择项目位置C#
1.1 创建ASP.NET Core Web API项目 打开Visual Studio 2022。 选择“创建新项目”。 选择“ASP.NET Core Web API”模板点击“下一步”。 输入项目名称如OracleApi选择项目位置点击“创建”。
1.2 安装Oracle数据库依赖
使用NuGet管理包工具在项目中安装Oracle数据库的EF Core依赖Oracle.EntityFrameworkCore
1.3 配置数据库上下文
在项目中创建一个AppDbContext类用于连接和操作users表。
AppDbContext.cs代码
using Microsoft.EntityFrameworkCore;namespace OracleApi
{public class AppDbContext : DbContext{public AppDbContext(DbContextOptionsAppDbContext options) : base(options) { }public DbSetUser Users{ get; set; } // 对应users表}
}
创建实体类User
User.cs代码
using System.ComponentModel.DataAnnotations.Schema;namespace OracleApi
{[Table(users)] // 显式指定表名public class User{[Key] //指定主键为Idpublic string Id{ get; set; } // 对应数据库中的 Id 字段public string Name{ get; set; } // 对应数据库中的 Name 字段}
}
1.4 创建控制器
在Controllers文件夹中创建一个TeachersController类用于处理按TEACHCODE查询TEACHERNAME的请求。
TeachersController.cs代码
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using System.Linq;
using System.Threading.Tasks;namespace OracleApi.Controllers
{[ApiController][Route(api/[controller])]public class TeachersController : ControllerBase{private readonly AppDbContext _context;public TeachersController(AppDbContext context){_context context;}[HttpGet({Id})]public async TaskIActionResult GetTeacherName(string Id){try{var user await _context.Users.Where(t t.Id Id).Select(t new { t.Id, t.Name }).FirstOrDefaultAsync();if (user null){return NotFound($User with Id {Id} not found.);}return Ok(user);}catch (DbException ex){return StatusCode(500, $Database error: {ex.Message});}catch (Exception ex){return StatusCode(500, $Internal server error: {ex.Message});}}}
}
1.5 配置数据库连接
在appsettings.json中添加Oracle数据库的连接字符串。假设你的Oracle数据库配置如下 用户名your_username 密码your_password 数据库服务器地址your_oracle_server 端口1521 服务名your_service_name
appsettings.json代码
{ConnectionStrings: {DefaultConnection: User Idyour_username;Passwordyour_password;Data Source(DESCRIPTION(ADDRESS(PROTOCOLTCP)(HOSTyour_oracle_server)(PORT1521))(CONNECT_DATA(SERVICE_NAMEyour_service_name)));Persist Security InfoTrue},Logging: {LogLevel: {Default: Information,Microsoft.AspNetCore: Warning}},AllowedHosts: *
}
1.6 配置依赖注入
在Program.cs中配置数据库上下文和中间件。
Program.cs代码 // 这段代码是 ASP.NET Core Web API 应用程序的入口点它配置了应用程序的中间件、服务和数据库上下文。
using Microsoft.AspNetCore.HttpsPolicy; // 引入用于 HTTPS 策略的命名空间
using Microsoft.EntityFrameworkCore; // 引入 Entity Framework Core 命名空间用于数据库操作
using Microsoft.Extensions.Options; // 引入用于配置选项的命名空间namespace WebApplication1 // 定义命名空间通常是项目名称
{public class Program // 定义一个名为 Program 的类作为应用程序的入口{public static void Main(string[] args) // 定义主方法程序的入口点{// 创建一个 WebApplicationBuilder 实例用于配置应用程序var builder WebApplication.CreateBuilder(args);// 添加 CORS 配置// CORS跨域资源共享允许前端应用从不同的源域名、协议或端口发送请求builder.Services.AddCors(options {// 添加默认的 CORS 策略options.AddDefaultPolicy(policy {// 允许来自 http://localhost 的请求policy.WithOrigins(http://localhost).AllowAnyHeader() // 允许任何请求头.AllowAnyMethod(); // 允许任何 HTTP 方法GET、POST 等});// 可以定义多个 CORS 策略并在需要时指定使用哪个策略options.AddPolicy(AllowLocalhost3000, policy {policy.WithOrigins(http://localhost:3000).AllowAnyHeader().AllowAnyMethod();});options.AddPolicy(AllowAll, policy {policy.AllowAnyOrigin().AllowAnyHeader().AllowAnyMethod();});});// 添加控制器支持builder.Services.AddControllers();// 添加数据库上下文服务builder.Services.AddDbContextAppDbContext(options // 配置数据库上下文使用 Oracle 数据库options.UseOracle(builder.Configuration.GetConnectionString(DefaultConnection)));// 构建应用程序实例var app builder.Build();// 使用 CORS 中间件// 确保应用程序能够处理跨域请求。app.UseCors(); // 使用默认策略//app.UseCors(AllowLocalhost3000); // 使用指定的策略// 使用授权中间件用于处理用户授权逻辑。app.UseAuthorization();// 映射控制器路由使得应用程序能够处理 HTTP 请求并调用相应的控制器方法。app.MapControllers();// 启动应用程序开始监听 HTTP 请求。app.Run();}}
}2. 客户端代码JQuery
2.1 创建HTML页面
创建一个简单的HTML页面用于输入TEACHCODE并调用服务端接口。
index.html代码
!DOCTYPE html
html langen
headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0titleTeacher Query/titlescript srchttps://cdn.jsdelivr.net/npm/jquery3.6.0/dist/jquery.min.js/script
/head
bodyh1Query Teacher by TEACHCODE/h1input typetext iduserId placeholderEnter TEACHCODE /button idqueryButtonQuery/buttondiv idresult/divscript$(document).ready(function () {$(#queryButton).click(function () {var userId $(#userId).val();$.ajax({url: http://localhost:5000/api/users/${userId}, // 修改为你的API地址type: GET,success: function (data) {$(#result).html(ID: ${data.Id}, Name: ${data.Name});},error: function (xhr, status, error) {$(#result).html(Error: ${error});}});});});/script
/body
/html
3. 部署到Windows上的Apache服务器
3.1 准备发布文件 在Visual Studio中选择“发布”选项将项目发布为自包含的可执行文件。 选择目标框架如net6.0和目标运行时如win-x64。 选择发布目标路径例如bin\Release\publish。 点击“发布”。
3.2 配置Apache 安装Apache确保Apache服务器已安装并运行。 安装mod_proxy模块确保mod_proxy模块已启用。打开httpd.conf文件取消注释以下行 apache复制 LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so 配置虚拟主机在httpd.conf文件中添加以下虚拟主机配置 VirtualHost *:80ServerName localhostDocumentRoot C:/Apache24/htdocsProxyPreserveHost OnProxyPass /api/ http://localhost:5000/api/ProxyPassReverse /api/ http://localhost:5000/api/
/VirtualHost DocumentRoot指向Apache的根目录。 ProxyPass和ProxyPassReverse将/api/路径的请求转发到ASP.NET Core应用。 4. 保存并重启Apache 3.3 启动ASP.NET Core应用 打开命令提示符或PowerShell。 导航到发布目录如bin\Release\publish。 启动应用命令行输入 dotnet OracleApi.dll 3.4 将客户端代码放在Apache根目录 将index.html文件放在Apache的根目录如C:\Apache24\htdocs。 确保Apache能够正常提供静态文件服务。
4. 测试 打开浏览器访问http://localhost。 输入用户Id 并点击“Query”按钮。 如果一切配置正确页面将显示对应的用户信息。
文章转载自: http://www.morning.plqqp.cn.gov.cn.plqqp.cn http://www.morning.tnhg.cn.gov.cn.tnhg.cn http://www.morning.fbbpj.cn.gov.cn.fbbpj.cn http://www.morning.lgsqy.cn.gov.cn.lgsqy.cn http://www.morning.ssgqc.cn.gov.cn.ssgqc.cn http://www.morning.jgcxh.cn.gov.cn.jgcxh.cn http://www.morning.lhztj.cn.gov.cn.lhztj.cn http://www.morning.kqbjy.cn.gov.cn.kqbjy.cn http://www.morning.mrbmc.cn.gov.cn.mrbmc.cn http://www.morning.shxmr.cn.gov.cn.shxmr.cn http://www.morning.nldsd.cn.gov.cn.nldsd.cn http://www.morning.dighk.com.gov.cn.dighk.com http://www.morning.mhnxs.cn.gov.cn.mhnxs.cn http://www.morning.zdqsc.cn.gov.cn.zdqsc.cn http://www.morning.hxxyp.cn.gov.cn.hxxyp.cn http://www.morning.wjlnz.cn.gov.cn.wjlnz.cn http://www.morning.qbwmz.cn.gov.cn.qbwmz.cn http://www.morning.grxsc.cn.gov.cn.grxsc.cn http://www.morning.qtkdn.cn.gov.cn.qtkdn.cn http://www.morning.wrlqr.cn.gov.cn.wrlqr.cn http://www.morning.wjplr.cn.gov.cn.wjplr.cn http://www.morning.ycnqk.cn.gov.cn.ycnqk.cn http://www.morning.kqglp.cn.gov.cn.kqglp.cn http://www.morning.nwczt.cn.gov.cn.nwczt.cn http://www.morning.lhwlp.cn.gov.cn.lhwlp.cn http://www.morning.gthwr.cn.gov.cn.gthwr.cn http://www.morning.qmwzr.cn.gov.cn.qmwzr.cn http://www.morning.rzbgn.cn.gov.cn.rzbgn.cn http://www.morning.lswgs.cn.gov.cn.lswgs.cn http://www.morning.sfwcb.cn.gov.cn.sfwcb.cn http://www.morning.ryfq.cn.gov.cn.ryfq.cn http://www.morning.rdlong.com.gov.cn.rdlong.com http://www.morning.qfrmy.cn.gov.cn.qfrmy.cn http://www.morning.rfdqr.cn.gov.cn.rfdqr.cn http://www.morning.tyrlk.cn.gov.cn.tyrlk.cn http://www.morning.pfbx.cn.gov.cn.pfbx.cn http://www.morning.drfrm.cn.gov.cn.drfrm.cn http://www.morning.syhwc.cn.gov.cn.syhwc.cn http://www.morning.baohum.com.gov.cn.baohum.com http://www.morning.fqlxg.cn.gov.cn.fqlxg.cn http://www.morning.wbns.cn.gov.cn.wbns.cn http://www.morning.pabxcp.com.gov.cn.pabxcp.com http://www.morning.jyfrz.cn.gov.cn.jyfrz.cn http://www.morning.qqrlz.cn.gov.cn.qqrlz.cn http://www.morning.wklrz.cn.gov.cn.wklrz.cn http://www.morning.dppfh.cn.gov.cn.dppfh.cn http://www.morning.rtsd.cn.gov.cn.rtsd.cn http://www.morning.nxcgp.cn.gov.cn.nxcgp.cn http://www.morning.rnkq.cn.gov.cn.rnkq.cn http://www.morning.plchy.cn.gov.cn.plchy.cn http://www.morning.yrngx.cn.gov.cn.yrngx.cn http://www.morning.jggr.cn.gov.cn.jggr.cn http://www.morning.cpkcq.cn.gov.cn.cpkcq.cn http://www.morning.lggng.cn.gov.cn.lggng.cn http://www.morning.rbsmm.cn.gov.cn.rbsmm.cn http://www.morning.pqryw.cn.gov.cn.pqryw.cn http://www.morning.rfbpq.cn.gov.cn.rfbpq.cn http://www.morning.dnwlb.cn.gov.cn.dnwlb.cn http://www.morning.hxycm.cn.gov.cn.hxycm.cn http://www.morning.qpxrr.cn.gov.cn.qpxrr.cn http://www.morning.kkwgg.cn.gov.cn.kkwgg.cn http://www.morning.rfzbm.cn.gov.cn.rfzbm.cn http://www.morning.mzqhb.cn.gov.cn.mzqhb.cn http://www.morning.yfphk.cn.gov.cn.yfphk.cn http://www.morning.xrpwk.cn.gov.cn.xrpwk.cn http://www.morning.jhrkm.cn.gov.cn.jhrkm.cn http://www.morning.zqkr.cn.gov.cn.zqkr.cn http://www.morning.bjsites.com.gov.cn.bjsites.com http://www.morning.flxqm.cn.gov.cn.flxqm.cn http://www.morning.fhqsm.cn.gov.cn.fhqsm.cn http://www.morning.jyzxt.cn.gov.cn.jyzxt.cn http://www.morning.qpmmg.cn.gov.cn.qpmmg.cn http://www.morning.nsncq.cn.gov.cn.nsncq.cn http://www.morning.mgtmm.cn.gov.cn.mgtmm.cn http://www.morning.ftdlg.cn.gov.cn.ftdlg.cn http://www.morning.mxftp.com.gov.cn.mxftp.com http://www.morning.uycvv.cn.gov.cn.uycvv.cn http://www.morning.skbhl.cn.gov.cn.skbhl.cn http://www.morning.rlnm.cn.gov.cn.rlnm.cn http://www.morning.rjrh.cn.gov.cn.rjrh.cn