为什么这句if (Session["UPower"].ToString ()!="5")写在下面的代码里面总是出错:編譯器錯誤訊息: CS0120: 非靜態欄位、方法或屬性 'System.Web.UI.Page.Session' 需要物件參考 注:SESSION值绝对传过来了,这个没有问题public static DataTable SelectFormForum(string sql)
{
try
{
for(int i=0;i<returns.Tables[0].Rows.Count;i++)
{ unprc=int.Parse(returns.Tables[0].Rows[i]["unprc"].ToString().Trim()); awt=int.Parse(returns.Tables[0].Rows[i]["awt"].ToString().Trim());
if (Session["UPower"].ToString ()!="5")
{
returns.Tables[0].Rows[i]["unprc"]="";
}
{
try
{
for(int i=0;i<returns.Tables[0].Rows.Count;i++)
{ unprc=int.Parse(returns.Tables[0].Rows[i]["unprc"].ToString().Trim()); awt=int.Parse(returns.Tables[0].Rows[i]["awt"].ToString().Trim());
if (Session["UPower"].ToString ()!="5")
{
returns.Tables[0].Rows[i]["unprc"]="";
}
{
string UPower = Session["UPower"].ToString();
...
for()
{
...
if( UPower != "5" )
{
...
}试试
行 29: try
行 30: {
行 31: string UPower = Session["UPower"].ToString();
{
try
{
for(int i=0;i<returns.Tables[0].Rows.Count;i++)
{ unprc=int.Parse(returns.Tables[0].Rows[i]["unprc"].ToString().Trim()); awt=int.Parse(returns.Tables[0].Rows[i]["awt"].ToString().Trim());
if(Session["UPower"]!=null)
{
if (Session["UPower"].ToString ()!="5")
{
returns.Tables[0].Rows[i]["unprc"]="";
}
}
你要么把static 去掉,要么把Session["UPower"].ToString()作为SelectFormForum函数的一个参数传进去!
{
returns.Tables[0].Rows[i]["unprc"]="";
}
行 52: {
行 53: throw (ex);
行 54: }
行 55: }
你够细心,我都没注意到是静态的,瞎说了,惭愧。看来不动手还是不行。
同意你的说法