Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 列';newscatid';多次为';派生表名';_C#_Sql - Fatal编程技术网

C# 列';newscatid';多次为';派生表名';

C# 列';newscatid';多次为';派生表名';,c#,sql,C#,Sql,下面的功能让我放弃,请给我一个感谢 为“DerivedTableName”多次指定了列“newscatid” 无法绑定多部分标识符“NEWSCAT20p.sabcat” 无法绑定多部分标识符“NEWS20p.newscatid” 无法绑定多部分标识符“NEWSCAT20p.newscatid” if(HiddenField1.Value==“0”) { //تابع پیچینگ ساخته شده توسط خودم Paging.Paging pg=新的Paging.Paging(); pg

下面的功能让我放弃,请给我一个感谢

为“DerivedTableName”多次指定了列“newscatid”

无法绑定多部分标识符“NEWSCAT20p.sabcat”

无法绑定多部分标识符“NEWS20p.newscatid”

无法绑定多部分标识符“NEWSCAT20p.newscatid”

if(HiddenField1.Value==“0”)
{
//تابع پیچینگ ساخته شده توسط خودم
Paging.Paging pg=新的Paging.Paging();
pg.ConnectionString=WebConfiguration Manager.ConnectionString[“conectapp”].ToString();
pg.TopView=rowcontRep=6;
字符串strQ=Request.QueryString[“Page”];
如果(strQ!=null)
{
数据集ds=新数据集();
// شرط،کلید جدول،فیلدها،نام جدول
ds=pg.GetData(int.Parse(strQ),“NEWS20p,NEWSCAT20p”,“*”,“newsid”,“和NEWSCAT20p.sabcat=“+HiddenField1.Value+”和NEWS20p.newscatid=NEWSCAT20p.newscatid”);//和
如果(ds.Tables.Count>0)
{
//کد
对于(int i=0;i”;
}
抓住
{
文字1.可见=假;
}
//پایان کد
}
}litPage.Text=pg.GetDataPaging(“NEWS20p,NEWSCAT20p”,int.Parse(strQ),Request.QueryString.ToString(),“newsid”,“where NEWSCAT20p.sabcat=“+HiddenField1.Value+”和NEWS20p.newscatid=NEWSCAT20p.newscatid”);//where//
}
其他的
{
数据集ds=新数据集();
ds=pg.GetData(1,“NEWS20p,NEWSCAT20p”,“*”,“newsid”,“和NEWSCAT20p.sabcat=“+HiddenField1.Value+”和NEWS20p.newscatid=NEWSCAT20p.newscatid”);//和
如果(ds.Tables.Count>0)
{
//کد
对于(int i=0;i”;
}
抓住
{
文字1.可见=假;
}
//پایان کد
}
}
litPage.Text=pg.GetDataPaging(“NEWS20p,NEWSCAT20p”,1,Request.QueryString.ToString(),“newsid”,“where NEWSCAT20p.sabcat=“+HiddenField1.Value+”和NEWS20p.newscatid=NEWSCAT20p.newscatid”);//在哪里
}
// تابع پیجینگ پایان
Label1.Text=HiddenField2.Value.Replace(“-”,”);
}
在这里输入代码
命名空间分页 {

公共类分页
{
私人int inttop;
公共环境;
公共int TopView
{
设置
{
inttop=值;
}
得到
{
返回inttop;
}
}
私有字符串strConStr;
公共字符串连接字符串
{
设置
{
strConStr=值;
}
得到
{
返回strConStr;
}
}
私有字符串GetQstring(字符串q)
{
字符串strP;
strP=q;
字符串[]strSp;
strSp=strP.拆分('&');
strP=“”;
字符串stro;
foreach(strSp中的字符串ss)
{
stro=ss;
如果(ss.Length>3)
{
if(ss.Substring(0,4).ToLower()=“第页”)
{
stro=“”;
}
}
如果(stro!=“”)
{
strP+=stro+“&”;
}
}
返回strP;
}
专用int SetPageNumber(int intPageNumber)
{
intNum=0;
对于(int i=1;i 5)
{
intBou=(intPage-5)+1;
}
if(Num-intPage<5)
{
intbb=9;
intBou=Num-intbb;
while(intBou<1)
{
if(intBou<1)
{
intbb-=1;
intBou=Num-intbb;
}
其他的
{
打破
}
}
}
intb=intPage;
如果(intb>1)
{
strP+=”;
}
其他的
{
strP+=”;
}
}
如果(intb
}

问题就在这里

@“从(SELECT*,ROW_NUMBER())中选择顶部(5)*作为NEWS20p中的RowNum,NESSCAT20P)作为NESS20P,NESSCAT20P,其中RowNum>=@PageIndex和NESSCAT20P.sabcat=“+HiddenField1.Value+”和NESS20P.NESSCATID=NESSCAT20P.NESSCATID”

您使用
“*”
这表示数据
    if (HiddenField1.Value == "0")
    {
        //تابع پیچینگ ساخته شده توسط خودم
        Paging.Paging pg = new Paging.Paging();
        pg.ConnectionString = WebConfigurationManager.ConnectionStrings["conectapp"].ToString();
        pg.TopView = rowcontRep = 6;

        string strQ = Request.QueryString["Page"];
        if (strQ != null)
        {
            DataSet ds = new DataSet();
            // شرط،کلید جدول،فیلدها،نام جدول
            ds = pg.GetData(int.Parse(strQ), "NEWS20p,NEWSCAT20p", "*", "newsid", "and NEWSCAT20p.sabcat=" + HiddenField1.Value + "  and NEWS20p.newscatid=NEWSCAT20p.newscatid ");//اگر شرط دارداول رشته //and// میخواهد
            if (ds.Tables.Count > 0)
            {
                //کد
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    try
                    {                           
                        persianDate prsDate2 = new persianDate(Convert.ToDateTime(ds.Tables[3].Rows[i].ToString()));
                        Literal1.Text += "<div class='col-lg-4 col-md-6'><div class='single-blog-post'><div class='blog-image'><a href='/post/" + ds.Tables[0].Rows[i].ToString() + "/" + Seo.GenerateSlug(ds.Tables[1].Rows[i].ToString()) + "'><img width='100%' height='270px' src='" + ds.Tables[8].Rows[i].ToString() + "' alt='image'></a>";
                        Literal1.Text += "<div class='date'><i data-feather='calendar'></i> " + prsDate2.simpleDate() + "  " + prsDate2.Time3() + "</div></div><div class='blog-post-content'><h3><a href='/post/" + ds.Tables[0].Rows[i].ToString() + "/" + Seo.GenerateSlug(ds.Tables[1].Rows[i].ToString()) + "'>" + ds.Tables[1].Rows[i].ToString() + "</a></h3><span>توسط <a href='#'>" + ds.Tables[6].Rows[i].ToString() + "</a></span><p>" + ds.Tables[4].Rows[i].ToString() + "</p><a href='/post/" + ds.Tables[0].Rows[i].ToString() + "/" + Seo.GenerateSlug(ds.Tables[1].Rows[i].ToString()) + "' class='read-more-btn'>بیشتر بخوانید <i data-feather='arrow-left'></i> </a></div></div></div>";
                    }
                    catch
                    {
                        Literal1.Visible = false;
                    }

                    //پایان کد
                }
            } litPage.Text = pg.GetDataPaging("NEWS20p,NEWSCAT20p", int.Parse(strQ), Request.QueryString.ToString(), "newsid", "where NEWSCAT20p.sabcat=" + HiddenField1.Value + "  and NEWS20p.newscatid=NEWSCAT20p.newscatid ");//اگر شرط دارد اول رشته //WHERE// میخواهد
        }
        else
        {
            DataSet ds = new DataSet();
            ds = pg.GetData(1, "NEWS20p,NEWSCAT20p", "*", "newsid", "and NEWSCAT20p.sabcat=" + HiddenField1.Value + "  and NEWS20p.newscatid=NEWSCAT20p.newscatid ");//اگر شرط دارد اول رشته// and// میخواهد
            if (ds.Tables.Count > 0)
            {
                //کد
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    try
                    {
                        persianDate prsDate2 = new persianDate(Convert.ToDateTime(ds.Tables[3].Rows[i].ToString()));
                        Literal1.Text += "<div class='col-lg-4 col-md-6'><div class='single-blog-post'><div class='blog-image'><a href='/post/" + ds.Tables[0].Rows[i].ToString() + "/" + Seo.GenerateSlug(ds.Tables[1].Rows[i].ToString()) + "'><img width='100%' height='270px' src='" + ds.Tables[8].Rows[i].ToString() + "' alt='image'></a>";
                        Literal1.Text += "<div class='date'><i data-feather='calendar'></i> " + prsDate2.simpleDate() + "  " + prsDate2.Time3() + "</div></div><div class='blog-post-content'><h3><a href='/post/" + ds.Tables[0].Rows[i].ToString() + "/" + Seo.GenerateSlug(ds.Tables[1].Rows[i].ToString()) + "'>" + ds.Tables[1].Rows[i].ToString() + "</a></h3><span>توسط <a href='#'>" + ds.Tables[6].Rows[i].ToString() + "</a></span><p>" + ds.Tables[4].Rows[i].ToString() + "</p><a href='/post/" + ds.Tables[0].Rows[i].ToString() + "/" + Seo.GenerateSlug(ds.Tables[1].Rows[i].ToString()) + "' class='read-more-btn'>بیشتر بخوانید <i data-feather='arrow-left'></i> </a></div></div></div>";
                    }
                    catch
                    {
                        Literal1.Visible = false;
                    }

                    //پایان کد
                }
            }
            litPage.Text = pg.GetDataPaging("NEWS20p,NEWSCAT20p", 1, Request.QueryString.ToString(), "newsid", "where NEWSCAT20p.sabcat=" + HiddenField1.Value + "  and NEWS20p.newscatid=NEWSCAT20p.newscatid ");// اگر شرط دارد اول رشته// WHERE// میخواهد
        }
        // تابع پیجینگ پایان
        Label1.Text = HiddenField2.Value.Replace("-"," ");
    }
enter code here
public class Paging
{
    private int inttop;
    public int conterC;
    public int TopView
    {
        set
        {
            inttop = value;
        }
        get
        {
            return inttop;
        }
    }
    private string strConStr;
    public string ConnectionString
    {
        set
        {
            strConStr = value;
        }
        get
        {
            return strConStr;
        }
    }
    private string GetQstring(string q)
    {
        string strP;
        strP = q;
        string[] strSp;
        strSp = strP.Split('&');
        strP = "";
        string stro;
        foreach (string ss in strSp)
        {
            stro = ss;
            if (ss.Length > 3)
            {
                if (ss.Substring(0, 4).ToLower() == "page")
                {
                    stro = "";
                }
            }

            if (stro != "")
            {
                strP += stro + "&";
            }
        }
        return strP;
    }
    private int SetPageNumber(int intPageNumber)
    {
        int intNum = 0;
        for (int i = 1; i <= intPageNumber - 1; i++)
        {
            intNum += inttop;
        }
        intNum += 1;
        return intNum;
    }
    private int GetRecordNumberPost(string strTableName,string keytable,string shart)
    {
        string strConnection = strConStr;
        SqlConnection con = new SqlConnection(strConnection);
        string strCmd = "select count(" + keytable + ")as Num from " + strTableName + " "+ shart +"";
        SqlCommand cmd = new SqlCommand(strCmd, con);
        SqlDataReader dd;
        int intNum = 0;
        try
        {
            con.Open();
            dd = cmd.ExecuteReader();
            dd.Read();
            intNum = int.Parse(dd["Num"].ToString());
            conterC = intNum;
            con.Close();
        }
        catch (Exception)
        {
            intNum = 0;
            con.Close();
        }
        return intNum;
    }
    public DataSet GetData(int intPage, string strTableName, string strFild, string keytable,string shart)
    {
        intPage = SetPageNumber(intPage);
        string strConnection = strConStr;
        string strCmd = @"SELECT TOP(" + TopView.ToString() + ") " + strFild + " FROM (SELECT * , ROW_NUMBER() OVER(ORDER BY " + keytable + " DESC) as  RowNum FROM " +  strTableName + ") as DerivedTableName WHERE RowNum >= @PageIndex "+shart+"";
        SqlConnection con = new SqlConnection(strConnection);
        SqlCommand cmd = new SqlCommand(strCmd, con);
        cmd.Parameters.AddWithValue("@PageIndex", intPage.ToString());

        DataSet ds = new DataSet();
        SqlDataAdapter da = new SqlDataAdapter(cmd);
      //  try
      //  {
            con.Open();
            da.Fill(ds, strTableName);
            con.Close();
      //  }
      //  catch
      //  {
           con.Close();
      //  }
        return ds;
    }
    public string GetDataPaging(string strTableName, int intPage, string strQ, string keytable, string shart)
    {
        int i = GetRecordNumberPost(strTableName, keytable,shart);
        string strP = "";
        int Num = (int)i / inttop;
        if (Num * inttop < i)
        {
            Num++;
        }

        int intBou = 1;
        if (intPage > 5)
        {
            intBou = (intPage - 5) + 1;
        }
        if (Num - intPage < 5)
        {
            int intbb = 9;
            intBou = Num - intbb;
            while (intBou < 1)
            {
                if (intBou < 1)
                {
                    intbb -= 1;
                    intBou = Num - intbb;
                }
                else
                {
                    break;
                }
            }
        }
        int intb = intPage;
        if (intb > 1)
        {
            strP += "<a href='?" + GetQstring(strQ) + "Page=1' class='pageN'><<</a>  ";
        }
        for (int k = intBou; k <= (intBou + 9); k++)
        {
            if (k > Num)
            {
                break;
            }
            if (k == intPage)
            {
                strP += "<a class='pageL1'> " + k.ToString() + "</a>  ";
            }
            else
            {
                strP += "<a href='?" + GetQstring(strQ) + "Page=" + k.ToString() + "' class='pageN'>" + k.ToString() + "</a>  ";
            }
        }
        if (intb < Num)
        {
            strP += "<a href='?" + GetQstring(strQ) + "Page=" + Num + "' class='pageN'>>></a>  ";
        }

        strP += " -- "+ "تعداد کل رکوردها = " + conterC;
        return strP;

    }
}