季侯鸟 发表于 2023-5-9 18:20:12

WEB API .NET环境发布

1、创建WEBAPI
1 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]
查看完整版本: WEB API .NET环境发布