在asp.net中调用C#函数 [英] Calling a C# function in asp.net

查看:125
本文介绍了在asp.net中调用C#函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个WebForm before_adm.aspx.cs,其代码如下:

 


public partial class _Default:System.Web.UI.Page
{

protected void Page_Load(object sender,EventArgs e)
{


protected void DropDownList2_SelectedIndexChanged(object sender,EventArgs e)
{
DropDown abs = new DropDown();
abs.DropDown();

.....

我想调用DropDown函数()在DropDown.cs文件中DropDown.cs中的代码如下:

  using System; 
使用System.Configuration;
使用System.Data;
使用System.Linq;
使用System.Web;
使用System.Web.Security;
使用System.Web.UI;
使用System.Web.UI.HtmlControls;
使用System.Web.UI.WebControls;
使用System.Web.UI.WebControls.WebParts;
使用System.Xml.Linq;
使用System.Data.Odbc;
使用System.Data.SqlClient;
使用System.Collections;
使用System.IO;
使用iTextSharp.text.html.simpleparser;
使用iTextSharp.text;
使用iTextSharp.text.pdf;
使用iTextSharp.text.html;

///< summary>
/// DropDown的概要描述
///< / summary>
public class DropDown
{
public DropDown()
{
try
{

OdbcConnection myConn = new OdbcConnection( Driver = {MySQL ODBC 3.51 Driver}; Server = 10.155.160.130; Database = testcase; User = root; Password =; Option = 3;);
OdbcCommand myCmd = new OdbcCommand(select skey,casecode from casetype,myConn);
myConn.Open();
OdbcDataReader myReader = myCmd.ExecuteReader();

//设置数据绑定。
DropDownList3.DataSource = myReader;
DropDownList3.DataTextField =skey;
DropDownList3.DataValueField =casecode;
DropDownList3.DataBind();
DropDownList3.Items.Insert(0,< - Select - >);


catch(Exception ex)
{
Response.Write(ex.StackTrace); (DropDownList2.SelectedItem.Text ==Register)
{
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(STA)


$ b if ));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(STM));
}
else if(DropDownList2.SelectedItem.Text ==Stamp)
{
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(WP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(FA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(LPA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(SA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CAPL));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(MCA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CRA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(XFER));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(ARP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(TXA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CRIR));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(WPCR));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(AO));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(AUA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CONP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(ELEP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(COAP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(COA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(ARA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CREF));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(ITA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(AAR));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(XFA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(TACR));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(EXAP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(COP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(AUE));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(AUW));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CRMA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CAREV));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CONF));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(PILWP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(SMWP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(XOB));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(SMCP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(AELEP));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(RUIT));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CS));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(RUCA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CRIA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CUSA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(EXA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(SMCRC));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(EA));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CRMAB));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CRMAM));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(COAPM));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CPM));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(MCAM));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(AS));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(PILSM));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(CRREF));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(SMCR));
DropDownList3.Items.Remove(DropDownList3.Items.FindByText(AUSFC));


else if(DropDownList2.SelectedItem.Text ==< - Select - >)
{
DropDownList3.Items.Clear( );





$ b

无论我到现在为止做了什么,这是正确的吗?我现在得到的错误是:

 名称'DropDownList2'在当前上下文中不存在
名称'DropDownList3'在当前上下文中不存在
名称'Response'在当前上下文中不存在

我想创建这个函数,因为我将创建许多这样的WebForms,并且我想调用上的相同函数


DropDownList2_SelectedIndexChanged
我需要传递哪些参数。我想知道传递参数的方式。请指导我。我想在.cs文件中创建许多这样的函数,这将有许多其他用户控件。 p>尝试这种方式

  public class DropDown 
{
DropDownList dropDownList3 = null;
DropDownList dropDownList2 = null;

public DropDown()
{
}

public void Register(DropDownList dropDown2,DropDownList dropDown3)
{
this .dropDownList2 = dropDown2;
this.dropDownList3 = dropDown3;
//你的代码在这里


code $ $ $ $ $ $ $ $ $ $ $ $ < HttpContext.Current.Response.Write



使用这个类作为

  DropDown abs = new DropDown(); 
abs.Register(dropdown1,dropdown2);

尽量不要在可能抛出异常的构造函数中编写代码


I have a WebForm before_adm.aspx.cs which has the code as follows:

.
.
.
public partial class _Default : System.Web.UI.Page
{

    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
    {
          DropDown abs =new DropDown();
          abs.DropDown();
    }
.....

I want to call a function DropDown() which is in file DropDown.cs The code in DropDown.cs is as follows:

using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.Odbc;
using System.Data.SqlClient;
using System.Collections;
using System.IO;
using iTextSharp.text.html.simpleparser;
using iTextSharp.text;
using iTextSharp.text.pdf;
using iTextSharp.text.html;

/// <summary>
/// Summary description for DropDown
/// </summary>
public class DropDown
{
    public DropDown()
    {
        try
        {

            OdbcConnection myConn = new OdbcConnection("Driver={MySQL ODBC 3.51 Driver};Server=10.155.160.130;Database=testcase;User=root;Password=;Option=3;");
            OdbcCommand myCmd = new OdbcCommand("select skey,casecode from casetype", myConn);
            myConn.Open();
            OdbcDataReader myReader = myCmd.ExecuteReader();

            //Set up the data binding.
            DropDownList3.DataSource = myReader;
            DropDownList3.DataTextField = "skey";
            DropDownList3.DataValueField = "casecode";
            DropDownList3.DataBind();
            DropDownList3.Items.Insert(0, "<-- Select -->");

        }
        catch (Exception ex)
        {
            Response.Write(ex.StackTrace);
        }

        if (DropDownList2.SelectedItem.Text == "Register")
        {
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("STA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("STM"));
        }
        else if (DropDownList2.SelectedItem.Text == "Stamp")
        {
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("WP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("FA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("LPA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("SA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CAPL"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("MCA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CRA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("XFER"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("ARP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("TXA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CRIR"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("WPCR"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("AO"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("AUA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CONP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("ELEP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("COAP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("COA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("ARA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CREF"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("ITA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("AAR"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("XFA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("TACR"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("EXAP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("COP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("AUE"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("AUW"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CRMA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CAREV"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CONF"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("PILWP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("SMWP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("XOB"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("SMCP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("AELEP"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("RUIT"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CS"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("RUCA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CRIA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CUSA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("EXA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("SMCRC"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("EA"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CRMAB"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CRMAM"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("COAPM"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CPM"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("MCAM"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("AS"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("PILSM"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("CRREF"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("SMCR"));
            DropDownList3.Items.Remove(DropDownList3.Items.FindByText("AUSFC"));

        }
        else if (DropDownList2.SelectedItem.Text == "<-- Select -->")
        {
            DropDownList3.Items.Clear();
        }
    }

}

Whatever i have done till now,is it correct? I am now getting the error as:

The name 'DropDownList2' does not exist in the current context
The name 'DropDownList3' does not exist in the current context  
The name 'Response' does not exist in the current context

I want to create this function because i will be creating many such WebForms and i want to call the same function on

DropDownList2_SelectedIndexChanged What parameters do i need to pass. i want to know the way to pass the parameters. Please guide me. i want to create many such functions in .cs file which will have many other user controls.

解决方案

Try this way

public class DropDown
{
    DropDownList dropDownList3 = null;
    DropDownList dropDownList2 = null;

    public DropDown()
    {
    }

    public void Register(DropDownList dropDown2, DropDownList dropDown3)
    {
        this.dropDownList2 = dropDown2;
        this.dropDownList3 = dropDown3;
        // your code goes here
     }
}

Use HttpContext.Current.Response.Write

Use this class as

DropDown abs = new DropDown();
abs.Register(dropdown1, dropdown2);

Try not to write code in constructor which might throw exception

这篇关于在asp.net中调用C#函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆