最近想研发一下国产化的软件架构,又不想放弃多年开发的.net,基于此搭建了debian操作系统、Jexus web服务器和达梦数据库,架构继续研用自研发的Craneoffice.net。
以下是部署及开发过程中遇到的问题,解决后觉得有必要记下要点,希望与大家分享:
- 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’)