ASP.NET中利用存储过程 在button控件和textbox控件模糊查询(用C#语言。)

小妹在这跪求各位了textbox控件输入内容,button控件写代码实现调用数据库存储过程,达到模糊查询数据并显示的功能。... 小妹在这跪求各位了
textbox控件输入内容,button控件写代码实现调用数据库存储过程,达到模糊查询数据并显示的功能。
展开
 我来答
dengyukeji
2013-09-17
知道答主
回答量:25
采纳率:0%
帮助的人:8.9万
展开全部
        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;
        }
yubang2010
2013-09-17 · 超过68用户采纳过TA的回答
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:147万
展开全部

  我给你写一个简单点的,完了之后你自己去测试一下。

--创建简单的存储过程
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怎么调用
追答
留下你邮箱,一会儿我 给你发过去。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
丶没好名字
2013-09-17 · TA获得超过143个赞
知道小有建树答主
回答量:374
采纳率:0%
帮助的人:231万
展开全部
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#代码传参数就好了.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Aloizon
2013-09-17
知道答主
回答量:7
采纳率:0%
帮助的人:1万
展开全部
问题描述的不清晰,你的意思是要用存储过程模糊查询 然后获取返回的结果吗?
更多追问追答
追问
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;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gzxpg
2013-09-17 · TA获得超过232个赞
知道小有建树答主
回答量:838
采纳率:76%
帮助的人:233万
展开全部
需求不明确
追问
textbox控件输入内容,button控件写代码实现调用数据库存储过程,达到模糊查询数据并显示的功能
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式