asp.net(c#)出现一个错误:是不是缺少程序集引用?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net(c#)出现一个错误:是不是缺少程序集引用?相关的知识,希望对你有一定的参考价值。

页面代码如下
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDB" %>
<Script language="c#" runat="server">

OleDbConnection MyConn;
private void Page_Load(object src, EventArgs e)

//链接语句
string MyConnString="Provider=microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath(".")+"\\data\\data.mdb;";
MyConn = new OleDbConnection(MyConnString);
MyConn.Open();
if (!Page.IsPostBack)

BindGrid();


ICollection CreateTable()

string strSel="select * from Score";
DataSet ds = new DataSet();

OleDbDataAdapter MyAdapter = new OleDbDataAdapter(strSel,MyConn);
MyAdapter.Fill(ds,"Score");

return ds.Tables["Score"].DefaultView;

public void BindGrid()

score.DataSource=CreateTable();
score.DataBind();


//处理Edit命令
public void DataGrid_EditCommand(object sender,DataGridCommandEventArgs e)

score.EditItemIndex = (int)e.Item.ItemIndex;
BindGrid();


//处理Cancel命令
public void DataGrid_CancelCommand(object sender,DataGridCommandEventArgs e)

score.EditItemIndex = -1;
BindGrid();


//处理Update命令
public void DataGrid_UpdateCommand(object sender,DataGridCommandEventArgs e)

//更新数据库中的信息
string strName = e.Item.Cells[1].Text;
int intChinese = Int32.Parse(((TextBox)e.Item.Cells[2].Controls[0]).Text);
int intMath = Int32.Parse(((TextBox)e.Item.Cells[3].Controls[0]).Text);
int intEnglish = Int32.Parse(((TextBox)e.Item.Cells[4].Controls[0]).Text);

//更新数据库中的数据
string strUpdate="Update Score Set Chinese="+intChinese+",Math="+intMath+",English="+intEnglish+" Where Name='"+strName+"'";
OleDbCommand MyComm = new OleDbCommand(strUpdate,MyConn);
MyComm.ExecuteNonQuery();

score.EditItemIndex = -1;
BindGrid();


#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)

//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);


/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()

this.score.SelectedIndexChanged += new System.EventHandler(this.score_SelectedIndexChanged);
this.Load += new System.EventHandler(this.Page_Load);


#endregion

private void score_SelectedIndexChanged(object sender, System.EventArgs e)





</Script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>编辑演示</title>
</head>
<body>
<form runat="server">
<center>
<b>演示EditCommandColumn</b>
<asp:DataGrid id="score" runat="server"
AutoGenerateColumns="False"
OnEditCommand="DataGrid_EditCommand"
OnCancelCommand="DataGrid_CancelCommand"
OnUpdateCommand="DataGrid_UppdateCommand">
<Columns>
<asp:EditCommandColumn HeaderText="操作区"
EditText="编辑"
UpdateText="更新"
CancelText="取消"
ButtonType="PushButton"/>
<asp:BoundColumn HeaderText="姓名" DataField="Name" ReadOnly="True"/>
<asp:BoundColumn HeaderText="语文" DataField="Chinese"/>
<asp:BoundColumn HeaderText="数学" DataField="Math"/>
<asp:BoundColumn HeaderText="英语" DataField="English"/>
</Columns>
</asp:DataGrid>
</center>
</form>
</body>
</html>

<%@ Import Namespace="System.Data.OleDB" %> 这个,好象是
<%@ Import Namespace="System.Data.OleDb" %> C#分大小写的,你写错了自然就错了
参考技术A 缺少命名空间 参考技术B 上楼是对头的,,你大小写错了

在新的 asp.net mvc-5 Web 应用程序中缺少“输入验证错误”的类定义

【中文标题】在新的 asp.net mvc-5 Web 应用程序中缺少“输入验证错误”的类定义【英文标题】:Missing class definition for "input-validation-error" inside a new asp.net mvc-5 web application 【发布时间】:2016-02-02 12:21:17 【问题描述】:

我使用 VS 2013 创建了一个新的 asp.net mvc-5 Web 应用程序。现在,当我尝试使用内置登录表单并将必填字段留空时,我得到以下信息:-

这两个字段都没有用红色突出显示,因为我用来进入以前版本的 asp.net mvc。现在从生成的标记中,我可以检查任何有验证错误的字段都将具有以下类:-

input-validation-error

但我主要搜索在我的 asp.net mvc-5 Web 应用程序中自动生成的整个 css 文件; site.css , bootstrap.css bootstrap.min.css ,但我找不到输入验证错误的定义?所以任何人都可以就此提出建议,如果它们有验证错误,我如何用红色突出显示字段,以及为什么这不是 asp.net mvc-5 中的默认行为?

【问题讨论】:

可能input-validation-error 是 jQuery 验证添加的,默认没有样式。您可以在 site.css 中添加样式,例如:.input-validation-error border-color: 1px solid red; @DavidSpence 是的,这个类是由 jquery 添加的,这是 asp.net mvc-5 中的默认行为。但是为什么 asp.net mvc-5 没有为 .inout-validation-error 添加任何类定义,而它在 jquery 验证中引用它,这可能是 VS 2013 和 asp.net mvc 模板中的错误吗?跨度> 我不认为这是一个错误。 jQuery 验证的使用比 asp.net-mvc 更广泛。我认为微软在出现错误时根本没有设置输入样式。不是每个人都想要那个。 @DavidSpence 但我曾经在 VS-2012 中创建 asp.net mvc-4 Web 应用程序,默认情况下包含这些类定义.. 在 asp.net mvc 4 应用程序中有很多 Site.css 中的默认样式(包括用于验证)。如果您在新的 asp.net mvc 5 应用程序中查看 Site.css,您会发现它要小得多。相反,包含引导 css,并且以这种方式设置了一些错误。简短的回答是,当 asp.net mvc 5 出现错误时,输入没有默认样式。 【参考方案1】:

为什么这不是 asp.net mvc-5 中的默认行为

这不是 ASP.NET MVC 5 的默认行为。您只需在 Site.css 文件中添加以下 css 类。

.field-validation-error 
    color: #e80c4d;
    font-weight: bold;


.field-validation-valid 
    display: none;


input.input-validation-error 
    border: 1px solid #e80c4d;


.validation-summary-errors 
    color: #e80c4d;
    font-weight: bold;
    font-size: 1.1em;


.validation-summary-valid 
    display: none;

【讨论】:

【参考方案2】:

对于那些使用 Bootstrap 的人,您需要将 CSS 从 Bootstrap 的验证 CSS 复制到等效的 .NET/jquery 类中。

从 Bootstrap 4.5 开始,它看起来像这样:

复制自.was-validated .form-control:invalid, .form-control.is-invalid

.form-control.input-validation-error 
    border-color: #dc3545;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);

复制自.was-validated .form-control:valid, .form-control.is-valid

.form-control.valid 
    border-color: #28a745;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);

【讨论】:

以上是关于asp.net(c#)出现一个错误:是不是缺少程序集引用?的主要内容,如果未能解决你的问题,请参考以下文章

C# asp.net - 找不到类型或命名空间名称“Helper”(您是不是缺少 using 指令或程序集引用?)

C#、Asp.Net Web 应用程序中出现奇怪的 System.***Exception 错误

C# ASP.NET ASP.NET#命名空间"System.Data"中不存在类型或命名空间名称"Linq"(是否缺少程序集引用?)

Asp.Net 5 缺少 Linq to Sql 类

GDI+中发生一般性错误(asp.net(C#))

Asp.net C# 静态方法线程安全错误处理