国产化之路 Linux Mono下的asp.net 开发笔记(一)

2023-12-25 11:25:03

? ? ?最近想研发一下国产化的软件架构,又不想放弃多年开发的.net,基于此搭建了debian操作系统、Jexus web服务器和达梦数据库,架构继续研用自研发的Craneoffice.net。

? ? 以下是部署及开发过程中遇到的问题,解决后觉得有必要记下要点,希望与大家分享:

  1. c#中 类似 (DataSet) ds 这种强制转换需要写成 ds as DataSet

? ? ? ? ?否则会遇到 System.InvalidcastException错误

? ? ?2.Page_Load 事件在C#里可以不区分大小写,但在Linux下,因写把?l 写成小写,造成该事件

????????函数被忽略而无法执行

? ? ?3.给达梦8数据库存储过程赋参数的时候,添加参数的顺序更重要,参数名居然不重要,所以最? ? ? ? ??好传递的顺序与存储过程编写的参数顺序一致

? ? ?4. asp:button 按钮的c#后台点击事件方法无法捆绑,点击不响应,可能是因为没有标注

? ? ? ? ??public 关键字

? ? ?5.目录的结构一定要是 / ,而且区分大小写,否则会创建、查询目录或文件失败

? ? ?6.web应用的访问网址也区分大小写

? ? ?7. web.config中达梦数据库连接串?UseId 官方文档可能有问题,会在JEXUS中报错,如下片? ? ? ? ? ? ? ?断:

????????<appSettings>

??? ????????<add key="JaneConnection" ????????????????value="Server=localhost;User=ENROLL_SA;PWD=111;Connect Timeout=50" />

? ?????</appSettings>

? ? ? 如标红,改为User关键字即解决。

? ? ?8. 诸如传参GUID类型时会遇到达梦报6007错误,类型转换异常错误,如以下代码

?????????DmParameter para?= new DmParameter("rowCid", DmDbType.VarChar);

???????? para.Value = new Guid(@rowCid).ToString();

??????? 记住,一定要ToString()一下

? ? ?9.ms sql server 中 convert(varchar(10),getdate(),20) 转换 在达梦数据库里该函数只有两个参数

? ? ? ? ?Convert(varchar(10),getdate()),实现等价的转换需要使用 to_char(getdate(),’yyyy-mm-dd’)

文章来源:https://blog.csdn.net/michaelline/article/details/132794915
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。