IIS 网站提示 Http404 ,config.BuildSessionFactory 报错,Could not compile the mapping document xxx
未能加载文件或程序集“Antlr3.Runtime“

1,IIS 网站提示 Http404 .

HTTP 404。您正在查找的资源(或者它的一个依赖项)可能已被移除,或其名称已更改,或暂时不可用。请检查以下 URL 并确保其拼写正确

1567655017761

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中需要用到。


本文由 hcb 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

还不快抢沙发

添加新评论