
如果你修改了 TopMes.DAL.Business 项依赖里面的 DAL_ASOrder.cs 文件(添加代码、删除代码等等操作),那么当你生成解决方案后,需要将生成的 TopMES.Business.DataAccess.dll 文件拷贝到 WXAPPXFServerWMHY.Webbin 目录下。
简单来说就是修改了哪个项依赖,就找到相应的 dll 文件到 WXAPPXFServerWMHY.Webbin 目录下,这样就可以防止当你使用相应方法时,就不会因为没有这些方法而报错了。
例子
比如我需要创建一个上传故障车消息的 API 供微信小程序使用,那么我需要写这个路由方法,代码如下:
[HttpPost]
public object CreateFalutCarInfo(dynamic FalutCarInfo)
{return FalutCarInfo;
}
现在微信小程序可以请求这个 API 了,但是数据上传需要操作数据库,将你上传的数据放入到数据库的相应表里面,所以我需要根据需求来创建这个表,如下图:
接下来我需要编写相应的方法来操作数据库,因此需要到 TopmesPCH 项目下写相应的操作数据库的代码,那么我们需要在数据访问层(DAL)下面创建与数据库直接操作的语句,再在业务逻辑层(BLL)处理数据是否符合要求。
假设我在 DAL_ASOrder 数据层添加创建故障车的数据库操作代码以及在 BLL_ASOrder 逻辑层添加处理数据库的返回消息代码。
DAL_ASOrder.cs
public int CreateFalutCarInfo(string storeName, string storeCode, string VIN, DateTime falutDate){StringBuilder sb = new StringBuilder();string sql = "INSERT INTO tb_CarFalutInfo(" +"storeName, storeCode, VIN, falutDate) values (" +"'{0}', '{1}', '{2}', '{3}'";sb.AppendFormat(sql, storeName, storeCode, VIN, falutDate);SqlCommandBase cmd = SqlBuilder.BuildSqlCommandBase(sb.ToString());return DataProvider.Instance.ExecuteNoQuery("TopMES_PCH", cmd.SqlCommand);
}
BLL_ASOrder.cs
public int CreateFalutCarInfo(string storeName, string storeCode, string VIN, DateTime falutDate){return _DAL.CreateFalutCarInfo(string storeName, string storeCode, string VIN, DateTime falutDate);
}
DAL_ASOrder.cs 文件这个里面 CreateFalutCarInfo 方法定义在 DALTopMES.DAL.BusinessAfterSaleASOrder.cs 里面,这个文件最后会集成到 TopMES.Business.DataAccess.dll。
BLL_ASOrder.cs 文件这个里面 CreateFalutCarInfo 方法定义在 BLLTopMES.BLL.BusinessAfterSaleASOrder.cs 里面,这个文件最后会集成到 TopMES.BLL.Business.dll。
因此当我点击生成解决方案,对应的 dll 文件会更新,即 debug 目录下的 TopMES.Business.DataAccess.dll 和 TopMES.BLL.Business.dll,将这两个文件更新到 WXAPPXFServerWMHY.Webbin 下面去。
现在操作数据库的方法有了,开始在微信接口 CreateFalutCarInfo 路由里面写调用上面 BLL_ASOrder.CreateFalutCarInfo 方法。
[HttpPost]
public object CreateFalutCarInfo(dynamic FalutCarInfo)
{BLL_ASOrder bllASOrder = new BLL_ASOrder();string storeName = ConvertEx.ToString(FalutCarInfo.storeName);string storeCode = ConvertEx.ToString(FalutCarInfo.storeCode);string VIN = ConvertEx.ToString(FalutCarInfo.VIN.input);DateTime falutDate = Convert.ToDateTime(ConvertEx.ToString(FalutCarInfo.falutDate));int n = 0;if (!string.IsNullOrEmpty(VIN)){int i = bllASOrder.CreateFalutCarInfo(storeName, storeCode, VIN, falutDate);if (i > 0) n = i;}return n;
}
写好本地开始运行,再进行接口测试。
如果你是无意刷到这篇文章并看到这里,希望你给我的文章来一个赞赞👍👍。如果你不同意其中的内容或有什么问题都可以在下方评论区留下你的想法或疑惑,谢谢你的支持!!😀😀
本文发布于:2024-02-13 13:32:13,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/1715483241252777.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
| 留言与评论(共有 0 条评论) |