为什么System.Data.SQLite在Godaddy上无法使用?如何解决?
[已解决] 为什么System.Data.SQLite在Godaddy上无法使用?如何解决?
当前页面:http://www.senparc.com/SZD-15
{ 收藏当前页面 }
55
[Web开发 > ASP.NET]
本地开发一切正常,但是上传到Godaddy的ASP.NET空间(ASP.NET3.5,IIS7.0)后,却出现这个错误:
Parser Error Message: Could not load file or assembly ‘System.Data.SQLite, Version=1.0.51.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139′ or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0×80131417)
请问是怎么回事呢?如何解决?
Parser Error Message: Could not load file or assembly ‘System.Data.SQLite, Version=1.0.51.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139′ or one of its dependencies. Failed to grant minimum permission requests. (Exception from HRESULT: 0×80131417)
请问是怎么回事呢?如何解决?
最佳答案
对,System.Data.SQLite.dll是无法在godaddy的服务器上使用的。原因是godaddy的ASP.NET2.0及以上的IIS使用了“信任级别”的限制:TrustLevel="Medium",也就是说,很多第三方的dll将无定法在这个级别下运行。必须把TrustLevel设置为"Full",才可以使用。但是出于安全考虑godaddy一般不会开发这个信任级别。
至于为什么TrustLevel="Medium",就无法使用System.Data.SQLite.dll,是因为当服务器设置了TrustLevel="Medium"之后,要求运行的dll必须是“完全托管代码”(pure managed code),并且不能包含任何的 P/Invoke调用或使用任何的原始API(raw API)调用。
不幸的是,System.Data.SQLite.dll使用了P/Invoke调用。所以无法跑在TrustLevel="Medium"级别下。
当然,如果你一定要使用SQLite数据库的话,方法是有的:
1、使用ASP.NET1.1(当然这样就没法使用很多东西,包括EF层面上的)
2、使用“托管代码”(managed code)的插件,这里有一个可以使用:http://code.google.com/p/managed-sqlite/
希望可以帮到你。
至于为什么TrustLevel="Medium",就无法使用System.Data.SQLite.dll,是因为当服务器设置了TrustLevel="Medium"之后,要求运行的dll必须是“完全托管代码”(pure managed code),并且不能包含任何的 P/Invoke调用或使用任何的原始API(raw API)调用。
不幸的是,System.Data.SQLite.dll使用了P/Invoke调用。所以无法跑在TrustLevel="Medium"级别下。
当然,如果你一定要使用SQLite数据库的话,方法是有的:
1、使用ASP.NET1.1(当然这样就没法使用很多东西,包括EF层面上的)
2、使用“托管代码”(managed code)的插件,这里有一个可以使用:http://code.google.com/p/managed-sqlite/
希望可以帮到你。
回答时间:2010/2/21 16:47:50
| 回答者:zsu
其他参考答案(0)
提交失败!请检查错误!错误信息:
以下信息或许对您有用:
- [已解决] 20 ASP.NET 4.0中关于图标、SEO、页面输出缓存(Charts,SEO,O... 2010/10/15 12:41:36
- [已解决] 10 Unable to read data from the transport c... 2010/10/9 15:45:37
- [已解决] 20 如何让线程停止,等待10秒钟? 2010/9/9 22:51:30
- [已解决] 20 最新的Razor模板语法介绍在哪里可以找到? 2010/8/5 14:21:42
- [已解决] 10 请问C#中的WebResponse.CharacterSet是通过真么得到的?是... 2010/7/21 13:19:33