我有一个令人讨厌的任务,就是将一个c#aspx页面连接到带有Npgsql的postgresql。
我遇到的问题是,当我尝试导入Npgsql时,我收到以下返回的aspx错误消息:
CS0246:找不到类型或命名空间名称'Npgsql'(您是否缺少using指令或程序集引用?)
我有一个javascript函数,它调用下面的aspx页面从db:
获取数据<%@ language="C#"%>
<%@ Import Namespace="Npgsql" %>
<%
// PostgeSQL-style connection string
string connstring = String.Format("Server=localhost;Port=5432;UID=posgres;Password=pass;Database=postgres_db;";
NpgsqlConnection conn = new NpgsqlConnection(connstring);
conn.Open();
%>
我假设我需要在我的web.config中进行设置,但我不能为我的生活做好准备。
任何帮助将不胜感激! 感谢。
答案 0 :(得分:1)
您的问题是没有引用的Npgsql.dll。您只能导入命名空间。
将SQL破解为ASP.NET文档并不是最佳做法...解决方案是将DLL添加到web.config文件中:
...
<system.web>
<compilation debug="true" targetFramework="4.5">
<assemblies>
<add assembly="Npgsql, Version=2.0.11.93, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" />
...
但我建议使用Visual Studio创建一个类库项目或至少一个Web应用程序项目(Express版本是免费的)。然后右键单击名为references的目录并在那里添加DLL。为什么? N层(http://en.wikipedia.org/wiki/Multitier_architecture):根据意图更好地组织代码。更容易找到错误并更改/维护代码...