IIS 网站提示 Http404 ,config.BuildSessionFactory 报错,Could not compile the mapping document xxx
未能加载文件或程序集“Antlr3.Runtime“
1,IIS 网站提示 Http404 .
HTTP 404。您正在查找的资源(或者它的一个依赖项)可能已被移除,或其名称已更改,或暂时不可用。请检查以下 URL 并确保其拼写正确
2. config.BuildSessionFactory 报错,需要引用Renci.SshNet
具体报错信息如下:未能加载文件或程序集“Renci.SshNet",找到这个dll然后引用加载就可以了。
SshNet是C#编写的Secure Shell(SSH)类库,支持SSH的很多特性,也支持socket4、socket5和http代理。
官方描述:SSH.NET is a Secure Shell (SSH) library for .NET, optimized for parallelism.
下载地址:http://sshnet.codeplex.com/
源码地址:https://github.com/sshnet/SSH.NET
config.BuildSessionFactory() 时会调用到,如果不有引用该dll会报错。
3.Could not compile the mapping document xxx
没有指定的hbm.cfg文件或者hbm.cfg文件的第二行2.0 要改成2.2
{"不应有 <hibernate-mapping xmlns='urn:nhibernate-mapping-2.0'>。"} =》改为2.2
4.未能加载文件或程序集“Antlr3.Runtime“
执行IQuery query = session.CreateQuery(hql).SetMaxResults(2);时提示 上面这个错误 ,找到这个dll引用。
在解析hql语句时要用到。
Antlr3.Runtime介绍如下:
ANTLR 语言识别的一个工具 (ANother Tool for Language Recognition ) 是一种语言工具,它提供了一个框架,可以通过包含 Java, C++, 或 C# 动作(action)的语法描述来构造语言识别器,编译器和解释器
ANTLR 一般用于构建 Domain-Specific Languages (DSL)。用户编写好特定语言的语法文件后,ANTLR 会根据该语法文件生成相应的源代码来识别该语言
Hibernate,一个在javaEE 中运用非常广泛的ORM 框架,使用ANTLR解析 HQL –一种类似于SQL 的面向对象的数据库查询语言
参考:https://www.ibm.com/developerworks/cn/java/j-lo-antlr/index.html
源码: https://github.com/antlr/antlrcs
官方:https://www.antlr3.org/
5. LinFu.DynamicProxy 动态代理
LinFu.DynamicProxy 开源吗?开源,源码介绍及下载
https://www.codeproject.com/Articles/20884/Introducing-the-LinFu-Framework-Part-I-LinFu-Dynam
还有一个类似的工具:Castle Dynamic Proxy
nhbiernate中需要用到。
还不快抢沙发