WEB API .NET环境发布
1、创建WEBAPI1 using Dapper;
2 using MesErp.Models;
3 using Microsoft.AspNetCore.Mvc;
4 using Microsoft.Extensions.Configuration;
5 using Newtonsoft.Json;
6 using System;
7 using System.Collections.Generic;
8 using System.Data;
9 using System.Data.Common;
10 using System.Data.SqlClient;
11 using System.Linq;
12 using System.Runtime.Intrinsics.Arm;
13 using System.Security.Cryptography;
14 using System.Threading.Tasks;
15 using System.Xml.Linq;
16 namespace MesErp.Controllers
17 {
18 /// <summary>
19 /// ERP-MES基础数据同步"
20 /// </summary>
21 ")]
22
23 public class ErpMesBasicController : ControllerBase
24 {
25 private string ConnectionStr()
26 {
27 var appSettingsJson = AppSettingsJson.GetAppSettings();
28 string connectionString2 = appSettingsJson.GetSection("ConnectionStrings")["DefaultConnection"];//链接数据库字符串
29 return connectionString2;
30 }
31 /// <summary>
32 /// 库存组织新增/更新
33 /// </summary>
34 /// <returns></returns>
35
36 public async Task< ErpMesRts> AddWorkcenter(WorkcenterModelworkcenters)
37 {
38 int rst = -1;
39 ErpMesRts rstsate = new ErpMesRts();
40
41 string connectionString = ConnectionStr();//链接字符串
42 DynamicParameters paras = new DynamicParameters();
43 stringCtworkter=JsonConvert.SerializeObject(workcenters);
44 paras.Add("@JosnName", Ctworkter);
45 // paras.Add("@sum", 0, DbType.Int32, ParameterDirection.Output);// 指明是输出参数,这里为指明参数类型大小
46 using (IDbConnection connection = new SqlConnection(connectionString))
47 {
48 try
49 {
50 rst = await connection.ExecuteAsync("proc_ERP_MesAddWorkcenter", paras, commandType: CommandType.StoredProcedure);
51 }
52 catch(Exception e)
53 {
54 rstsate.msg=e.Message.ToString()+"数据库异常";
55
56 }
57 // 执行存储过程
58 // rst = await connection.ExecuteAsync("proc_AddSysUser01", paras , commandType: CommandType.StoredProcedure);
59
60 }
61 if (rst > 0)
62 {
63 rstsate.status = 200;
64 rstsate.msg = "成功";
65 }
66
67
68 //"{status: = " + code + ", msg = " + msg + ", data = " + null "}";
69 return rstsate;
70 //rst 返回1为成功
71 // return Json(new { code = 200, msg = "ok" });
72 }
73 /// <summary>
74 /// 人员主数据新增/更新
75 /// </summary>
76 /// <returns></returns>
77
78 public async Task<ErpMesRts> AddPersonInfo( PersonInfoModelpersonInfos)
79 {
80 int rst = -1;
81 ErpMesRts rstsate = new ErpMesRts();
82
83 string connectionString = ConnectionStr();//链接字符串
84 DynamicParameters paras = new DynamicParameters();
85 string Ctworkter = JsonConvert.SerializeObject(personInfos);
86 paras.Add("@JosnName", Ctworkter);
87 // paras.Add("@sum", 0, DbType.Int32, ParameterDirection.Output);// 指明是输出参数,这里为指明参数类型大小
88 using (IDbConnection connection = new SqlConnection(connectionString))
89 {
90 try
91 {
92 rst = await connection.ExecuteAsync("proc_ERP_MesAddPersonInfo", paras, commandType: CommandType.StoredProcedure);
93 }
94 catch (Exception e)
95 {
96 rstsate.msg = e.Message.ToString() + "数据库异常";
97
98 }
99 // 执行存储过程
100 // rst = await connection.ExecuteAsync("proc_AddSysUser01", paras , commandType: CommandType.StoredProcedure);
101
102 }
103 if (rst > 0)
104 {
105 rstsate.status = 200;
106 rstsate.msg = "成功";
107 }
108
109
110 //"{status: = " + code + ", msg = " + msg + ", data = " + null "}";
111 return rstsate;
112 //rst 返回1为成功
113 // return Json(new { code = 200, msg = "ok" });
114 }
115 /// <summary>
116 /// 业务组新增/更新
117 /// </summary>
118 /// <returns></returns>
119
120 public async Task<ErpMesRts> AddBusinessGroup( BusinessGroupModelbusinessGroups)
121 {
122 int rst = -1;
123 ErpMesRts rstsate = new ErpMesRts();
124
125 string connectionString = ConnectionStr();//链接字符串
126 DynamicParameters paras = new DynamicParameters();
127 string Ctworkter = JsonConvert.SerializeObject(businessGroups);
128 paras.Add("@JosnName", Ctworkter);
129 // paras.Add("@sum", 0, DbType.Int32, ParameterDirection.Output);// 指明是输出参数,这里为指明参数类型大小
130 using (IDbConnection connection = new SqlConnection(connectionString))
131 {
132 try
133 {
134 rst = await connection.ExecuteAsync("proc_ERP_MesAddBusinessGroup", paras, commandType: CommandType.StoredProcedure);
135 }
136 catch (Exception e)
137 {
138 rstsate.msg = e.Message.ToString() + "数据库异常";
139
140 }
141 // 执行存储过程
142 // rst = await connection.ExecuteAsync("proc_AddSysUser01", paras , commandType: CommandType.StoredProcedure);
143
144 }
145 if (rst > 0)
146 {
147 rstsate.status = 200;
148 rstsate.msg = "成功";
149 }
150
151
152 //"{status: = " + code + ", msg = " + msg + ", data = " + null "}";
153 return rstsate;
154 //rst 返回1为成功
155 // return Json(new { code = 200, msg = "ok" });
156 }
157 /// <summary>
158 /// 组织主数据/部门主数据新增/更新
159 /// </summary>
160 /// <returns></returns>
161
162 public async Task<ErpMesRts> AddDivision( DivisionModel divisions)
163 {
164 int rst = -1;
165 ErpMesRts rstsate = new ErpMesRts();
166
167 string connectionString = ConnectionStr();//链接字符串
168 DynamicParameters paras = new DynamicParameters();
169 string Ctworkter = JsonConvert.SerializeObject(divisions);
170 paras.Add("@JosnName", Ctworkter);
171 // paras.Add("@sum", 0, DbType.Int32, ParameterDirection.Output);// 指明是输出参数,这里为指明参数类型大小
172 using (IDbConnection connection = new SqlConnection(connectionString))
173 {
174 try
175 {
176 rst = await connection.ExecuteAsync("proc_ERP_MesAddDivision", paras, commandType: CommandType.StoredProcedure);
177 }
178 catch (Exception e)
179 {
180 rstsate.msg = e.Message.ToString() + "数据库异常";
181
182 }
183 // 执行存储过程
184 // rst = await connection.ExecuteAsync("proc_AddSysUser01", paras , commandType: CommandType.StoredProcedure);
185
186 }
187 if (rst > 0)
188 {
189 rstsate.status = 200;
190 rstsate.msg = "成功";
191 }
192
193
194 //"{status: = " + code + ", msg = " + msg + ", data = " + null "}";
195 return rstsate;
196 //rst 返回1为成功
197 // return Json(new { code = 200, msg = "ok" });
198 }
199 /// <summary>
200 /// 物料类型新增/更新
201 /// </summary>
202 /// <returns></returns>
203
204 public async Task<ErpMesRts> AddProductType(ProductTypeModelproductTypes)
205 {
206 int rst = -1;
207 ErpMesRts rstsate = new ErpMesRts();
208
209 string connectionString = ConnectionStr();//链接字符串
210 DynamicParameters paras = new DynamicParameters();
211 string Ctworkter = JsonConvert.SerializeObject(productTypes);
212 paras.Add("@JosnName", Ctworkter);
213 // paras.Add("@sum", 0, DbType.Int32, ParameterDirection.Output);// 指明是输出参数,这里为指明参数类型大小
214 using (IDbConnection connection = new SqlConnection(connectionString))
215 {
216 try
217 {
218 rst = await connection.ExecuteAsync("proc_ERP_MesAddProductType", paras, commandType: CommandType.StoredProcedure);
219 }
220 catch (Exception e)
221 {
222 rstsate.msg = e.Message.ToString() + "数据库异常";
223
224 }
225 // 执行存储过程
226 // rst = await connection.ExecuteAsync("proc_AddSysUser01", paras , commandType: CommandType.StoredProcedure);
227
228 }
229 if (rst > 0)
230 {
231 rstsate.status = 200;
232 rstsate.msg = "成功";
233 }
234
235
236 //"{status: = " + code + ", msg = " + msg + ", data = " + null "}";
237 return rstsate;
238 //rst 返回1为成功
239 // return Json(new { code = 200, msg = "ok" });
240 }
241 /// <summary>
242 /// 物料主数据新增/更新
243 /// </summary>
244 /// <returns></returns>
245
246 public async Task<ErpMesRts> AddProduct( ProductModel products)
247 {
248 int rst = -1;
249 ErpMesRts rstsate = new ErpMesRts();
250
251 string connectionString = ConnectionStr();//链接字符串
252 DynamicParameters paras = new DynamicParameters();
253 string Ctworkter = JsonConvert.SerializeObject(products);
254 paras.Add("@JosnName", Ctworkter);
255 // paras.Add("@sum", 0, DbType.Int32, ParameterDirection.Output);// 指明是输出参数,这里为指明参数类型大小
256 using (IDbConnection connection = new SqlConnection(connectionString))
257 {
258 try
259 {
260 rst = await connection.ExecuteAsync("proc_ERP_MesAddProduct", paras, commandType: CommandType.StoredProcedure);
261 }
262 catch (Exception e)
263 {
264 rstsate.msg = e.Message.ToString() + "数据库异常";
265
266 }
267 // 执行存储过程
268 // rst = await connection.ExecuteAsync("proc_AddSysUser01", paras , commandType: CommandType.StoredProcedure);
269
270 }
271 if (rst > 0)
272 {
273 rstsate.status = 200;
274 rstsate.msg = "成功";
275 }
276
277
278 //"{status: = " + code + ", msg = " + msg + ", data = " + null "}";
279 return rstsate;
280 //rst 返回1为成功
281 // return Json(new { code = 200, msg = "ok" });
282 }
283
284
285
286
287
288 /*
289 /// <summary>
290 /// 库存组织更新
291 /// </summary>
292 /// <param name="testModel">接收对象</param>
293 /// <returns></returns>
294
295 public async Task<string> updateBlog( WorkcenterModel testModel)
296 {
297 //这个就代表的你第二层,懂弄?很多层都是一样的
298
299
300 int rst = -1;
301 int code = 500;
302 string msg = "失败";
303 string connectionString = ConnectionStr();//链接字符串
304 using (IDbConnection connection = new SqlConnection(connectionString))
305 { try
306 { // 执行存储过程
307 rst = await connection.ExecuteAsync(" UPDATE Workcenter SET WorkcenterDescription=isnull(@WorkcenterDescription,WorkcenterDescription),IsHB=@IsHB, SiteId=@SiteId,SiteName = @SiteName,IsClosed = @IsClosed WHERE WorkcenterName = @WorkcenterName ", testModel.workcenters);
308 }
309 catch (Exception e)
310 {
311 msg = e.Message.ToString() + "数据库异常";
312
313 }
314 }
315 if (rst > 0)
316 {
317 code = 200;
318 msg = "成功";
319 }
320 return "{code = " + code + ", msg = " + msg + "}";
321 }
322
323 */
324
325 }
326 }View Code用restful 风格创建接口
链接字符串
2、webapi发布
发布路径
发布时选择空文件
选择路径
发布完成示例图
注意编辑接口是会勾选XML输出
这个路径打包编译时是不会自动编译过去的
3、发布到IIS上
创建应用池时(创建无托管、集成)
部署服务器环境需要安装三个文件
https://dotnet.microsoft.com/zh-cn/download/dotnet/5.0环境下载、也可参照其他链接https://blog.csdn.net/xiaochenXIHUA/article/details/118027591
环境安装后需要将文件发布IIS上
同时配置将XML文件考到发布文件里面
配制web.config加下面节点
配置代码
1 <?xml version="1.0" encoding="utf-8"?>
2 <configuration>
3 <location path="." inheritInChildApplications="false">
4 <system.webServer>
5 <handlers>
6 <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
7 </handlers>
8 <aspNetCore processPath="dotnet" arguments=".\MesErp.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" >
9 <environmentVariables>
10<environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
11</environmentVariables>
12 </aspNetCore>
13 </system.webServer>
14 </location>
15 </configuration>
16 View Code运行webapi
来源:https://www.cnblogs.com/donywc/archive/2023/05/09/17384647.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页:
[1]