Loveyuki's BLOG

L-BLOG.NET, The Matrix Reloaded.

优秀的纯 .NET 数据库引擎 VistaDB
Loveyuki | 2008-07-15 10:24 | 1187 点击 | 46 评论 | VistaDBASP.NET

Bitrac 刚开始开发的时候用的 Access 数据库,但是 Access 数据数据膨胀太厉害,效率也不是很好,后来 Bitrac 使用 SQLite 数据,但是 SQLite 数据库的 .NET 引擎有个致命的弱点就是无法在 Medium Trust 模式下使用,而国内外很多 .NET 空间都为了安全使用 Medium Trust 模式,这就为 Bitrac 以后的推广带来了麻烦,本来我关注过 VistaDB 这个数据库引擎,但是以前 VistaDB 是收费的,大概今年 5 月份 VistaDB 推出了免费使用的 Express 版本。

VistaDB 是完全用 .NET 开发的一个数据引擎,效率虽然没有 SQLite 那么快,但是却支持 Medium Trust 模式,通用性比 SQLite 强太多了。正在考虑是否把 Bitrac 的数据库引擎换到 VistaDB。等有时间具体测试一下 VistaDB 的效率以后再决定是否转换。

VistaDB 的主页:http://www.vistadb.net/

引用通告:http://www.loveyuki.com/Article/90/Trackback.ashx
引用 zx.asd
2008-07-24 15:48 #

你能否考虑下把Sqlite的dl加入进GAC里?如果能加的话,就可以通过Medium Trust了。

引用 Loveyuki
2008-07-24 17:17 #
2008-07-24 15:48 by zx.asd

你能否考虑下把Sqlite的dl加入进GAC里?如果能加的话,就可以通过Medium Trust了。

加 GAC 必须要在服务器端操作的。现在数据有三个选择,Access,SQL Server Compact Edition 和 VistaDB。可惜这三个的分页都需要 ADO.NET 完成。

引用 zx.asd
2008-07-24 17:27 #

如果你有信心去推广它,这样做是值得的,也是必要的。

所以还是先试验成功最好了。

引用 Loveyuki
2008-07-24 18:32 #
2008-07-24 17:27 by zx.asd

如果你有信心去推广它,这样做是值得的,也是必要的。所以还是先试验成功最好了。

安装到 GAC 很简单,把 System.SQLite.Data.dll 复制到 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 里面然后再拖进 C:\WINDOWS\assembly 就可以了。

引用 时代
2008-07-24 20:44 #

想问一下,调整为Medium Trust了,程序如何调试? 原有的程序 Full模式正常,调整为Medium Trust 了,挺多错误的,还提示 某某  类型的权限已失败,怎么解决?

引用 Loveyuki
2008-07-24 20:50 #
2008-07-24 20:44 by 时代

想问一下,调整为Medium Trust了,程序如何调试? 原有的程序 Full模式正常,调整为Medium Trust 了,挺多错误的,还提示 某某 类型的权限已失败,怎么解决?

目前 Bitrac 在 Medium Trust 下面主要有两个问题:一个就是 SQLite 的问题,还有就是后台首页面获取服务器 CPU 信息的问题。我本地的版本已经解决了第二个问题,下次更新。第一个问题比较麻烦,需要动服务器或者换数据库系统。

引用 时代
2008-07-24 20:54 #

对了,在网上搜  Medium trust应用程序执行不注册访问, 不记录访问及不能使用反射.

那也就是说CreateInstance用不了?

引用 zx.asd
2008-07-24 21:29 #

谢谢,SQLite的倒是放成了,不过又有新问题了,呵呵。

引用 Loveyuki
2008-07-24 22:46 #
2008-07-24 21:29 by zx.asd

谢谢,SQLite的倒是放成了,不过又有新问题了,呵呵。

呵呵。Medium Trust 问题还是比较多的。Medium Trust 模式下 Trackback 也无法发送了,禁止了 WebRequest 去访问其他网站的页面。正在想解决办法。

引用 Loveyuki
2008-07-24 22:48 #
2008-07-24 20:54 by 时代

对了,在网上搜 Medium trust应用程序执行不注册访问, 不记录访问及不能使用反射.那也就是说CreateInstance用不了?

应该是的。

引用 Loveyuki
2008-07-24 22:52 #
2008-07-24 22:46 by Loveyuki

呵呵。Medium Trust 问题还是比较多的。Medium Trust 模式下 Trackback 也无法发送了,禁止了 WebRequest 去访问其他网站的页面。正在想解决办法。

嘎嘎。弄了半天解决方法真简单啊。 originUrl=".*" 就是了。

引用 时代
2008-07-28 18:14 #
2008-07-24 22:52 by Loveyuki

嘎嘎。弄了半天解决方法真简单啊。 originUrl=".*" 就是了。

 

想问下,如果是国外的空间,他们的配置会是 originUrl=".*" 吗? 提起 Medium Trust 模式,如果自己没服务器,好像受的牵制太多了噢。

引用 Loveyuki
2008-07-28 22:08 #
2008-07-28 18:14 by 时代

想问下,如果是国外的空间,他们的配置会是 originUrl=".*" 吗? 提起 Medium Trust 模式,如果自己没服务器,好像受的牵制太多了噢。

originUrl 是自己在 web.Config 配置的。默认的 Medium Trust 不会禁止这个属性的修改。目前 Bitrac 对于 Medium Trust 的限制就是 SQLite,你可以跟网站管理员联系说明 SQLite 的优势,让他把库安装到 GAC 里面就安逸了。

引用 时代
2008-08-09 21:33 #

         OleDbPermission 不可用. 意思是你不可以用ADO.NET管理OLE DB data provider 去访问数据库. 然而, 你可以使用受管理的SQL Server provider去访问SQL Server 数据库.

Medium Trust 怎么使用Access数据库?

请求“System.Data.OleDb.OleDbPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”类型的权限已失败。

能不能介绍些 Medium Trust方面的中文资料? 百度搜到的不多

引用 时代
2008-08-12 09:51 #

cry.gif 博主怎么不看评论啊,帮忙回答一下啊,谢谢啦。

引用 Loveyuki
2008-08-12 10:07 #
2008-08-12 09:51 by 时代

博主怎么不看评论啊,帮忙回答一下啊,谢谢啦。

Medium Trust 在微软的 MSDN 有详细的解释啊,Medium Trust 默认是无法使用 OLEDB 连接的,一般的虚拟主机如果是 Medium Trust 都会自定义这个权限把打开,或者有免费的 SQL Server Express ,要不然谁会用啊。呵呵

引用 八度社区
2008-08-19 12:25 #

请问一下博主,SQLite好用吗?

引用 shds
2008-08-19 16:54 #

下次什么时候更新~ 最近都没~~~

引用 不错
2008-08-25 02:16 #

不错...

引用 皇冠投注网
2008-09-04 00:25 #

Microsoft® SQL Server™ 2005 提供一套完整的程序接口,使得开发者可以比以前更加轻松,更易操作的,更具可靠性的构建完善的数据库应用程序。随着大篇幅的程序选项而来的是为每个任务提供整套适当工具的考量的需求。虽然很多任务可以用很多方法完成,但每种方式都有其优势和弊端。因此,为工作找寻最好的工具的标准在于应用程序在商业使用中的加载和使用的程度。

 

(必填)
(必填,不会被公开)
 

版权所有©2007-2008, Loveyuki.com | 系统:Bitrac | 皮肤:Blog Pixel | 空间域名:光辉互联,易联网络