ASP.NET中利用存储过程 在button控件和textbox控件模糊查询(用C#语言。)
小妹在这跪求各位了textbox控件输入内容,button控件写代码实现调用数据库存储过程,达到模糊查询数据并显示的功能。...
小妹在这跪求各位了
textbox控件输入内容,button控件写代码实现调用数据库存储过程,达到模糊查询数据并显示的功能。 展开
textbox控件输入内容,button控件写代码实现调用数据库存储过程,达到模糊查询数据并显示的功能。 展开
6个回答
展开全部
public static IEnumerable<Models> GetList(int PageIndex, int PageSize, int StartLen, string WhereStr, string OrderbyStr, string ColumnStr, out long TotalRecord)
{
TotalRecord = 0;
DbContext db = new DbContext();
var param_pagesize = new SqlParameter { ParameterName = "@PageSize", SqlDbType = SqlDbType.Int, Value = PageSize };
var param_pageindex = new SqlParameter { ParameterName = "@PageIndex", SqlDbType = SqlDbType.Int, Value = PageIndex };
var param_startlen = new SqlParameter { ParameterName = "@StartLen", SqlDbType = SqlDbType.Int, Value = StartLen };
var param_wherestring = new SqlParameter { ParameterName = "@WhereStr", SqlDbType = SqlDbType.NVarChar, Value = WhereStr };
var param_orderstr = new SqlParameter { ParameterName = "@OrderbyStr", SqlDbType = SqlDbType.NVarChar, Value = OrderbyStr };
var param_columnstr = new SqlParameter { ParameterName = "@ColumnStr", SqlDbType = SqlDbType.NVarChar, Value = ColumnStr };
var param_totalrecord = new SqlParameter { ParameterName = "@Records", SqlDbType = SqlDbType.BigInt, Value = -1, Direction = ParameterDirection.Output };
ObservableCollection<Models> List = new ObservableCollection<Models>(db.Database.SqlQuery<Models>("EXEC usp_GetList @PageSize,@PageIndex,@StartLen,@WhereStr,@OrderbyStr,@ColumnStr,@Records output", param_pagesize, param_pageindex, param_startlen, param_wherestring, param_orderstr,param_columnstr, param_totalrecord));
long.TryParse(param_totalrecord.Value.ToString(), out TotalRecord);
return List;
}
展开全部
我给你写一个简单点的,完了之后你自己去测试一下。
--创建简单的存储过程
IF EXISTS(SELECT * FROM WHERE NAME='PROC_TEMP')
DROP PROC PROC_TEMP
GO
CREATE PROC PROC_TEMP
(
@str VARCHAR(100)
)
AS
SELECT * FROM MASTER..SYSOBJECTS WHERE CHARINDEX(NAME,@str)>0
RETURN
然后你的ASP.NET页面绑定系统的master数据库中的sysobjects表
然后输入一个值进行查询,看看效果。不懂加我Q:360031914。
更多追问追答
追问
存储过程已经有了,就是不知道asp.net怎么调用
追答
留下你邮箱,一会儿我 给你发过去。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
private void button1_Click(object sender, EventArgs e)
{
string strConn="你的数据库连接字符串";
string strSql="你的存储过程名称";
using (SqlConnection conn = new SqlConnection(strConn))
{
//方法一,使用Reader
//SqlCommand cmd = new SqlCommand(strSql, conn);
//cmd.CommandText = CommandType.StoredProcedure;//设置命令为存储过程
//cmd.Parameters.AddRange(this.textBox1.Text);//带参的存储过程
//cmd.ExecuteReader();
//方法二,使用DS
SqlDataAdapter da = new SqlDataAdapter(strSql, conn);
DataSet ds = new DataSet();
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.Parameters.AddRange(this.textBox1.Text);
da.Fill(ds);
//return ds.Tables[0];返回表
}
}
追问
Textbox1,textbox2,textbox3如何绑定 存储过程中的
@p_comanyid numeric, ---单位ID 必填项
[@p_sadocid] numeric, --销售单 可选
[@p_goodsid] numeric, --货品ID 可选
追答
SQL语句写好,然后C#代码传参数就好了.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
问题描述的不清晰,你的意思是要用存储过程模糊查询 然后获取返回的结果吗?
更多追问追答
追问
textbox控件输入内容,button控件写代码实现调用数据库存储过程,达到模糊查询数据并显示的功能
追答
return DbHelperSQL.RunProcedure("UP_GetRecordByPage",parameters);
///
/// 执行存储过程,返回SqlDataReader ( 注意:调用该方法后,一定要对SqlDataReader进行Close )
///
/// 存储过程名
/// 存储过程参数
/// SqlDataReader
public static SqlDataReader RunProcedure(string storedProcName, IDataParameter[] parameters)
{
SqlConnection connection = new SqlConnection(connectionString);
SqlDataReader returnReader;
connection.Open();
SqlCommand command = BuildQueryCommand(connection, storedProcName, parameters);
command.CommandType = CommandType.StoredProcedure;
returnReader = command.ExecuteReader(CommandBehavior.CloseConnection);
return returnReader;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
需求不明确
追问
textbox控件输入内容,button控件写代码实现调用数据库存储过程,达到模糊查询数据并显示的功能
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询