17. oktober 2004 - 14:35Der er
12 kommentarer og 1 løsning
Session og global.asax problemer
Jeg har et problem med mine hjemmesider, når jeg vil gøre brug af mine sessions. Jeg får følgende fejl:
Compiler Error Message: CS0234: The type or namespace name 'Global' does not exist in the class or namespace 'System.Web.UI.WebControls.DataGrid' (are you missing an assembly reference?)
Source Error:
Line 26: Line 27: [System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()] Line 28: public class Global_asax : DataGrid.Global { Line 29: Line 30: private static bool __initialized = false;
Source File: c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\datagrid\827e165f\a4dd7967\zr_mie3e.0.cs Line: 28
Jeg har selvfølgelig sikret mig, at jeg kun har én Global.asax fil i namespacet DataGrid. Men den kan tydeligvis ikke finde den. Hvorfor ikke?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls;
namespace DataGrid { public class WebForm1 : System.Web.UI.Page { protected System.Web.UI.WebControls.DataGrid MyDataGrid; protected System.Web.UI.WebControls.DataGrid ShoppingCart;
// e.Item is the row of the table where the command fired // For bound columns the value is stored in the Text property of TableCell TableCell itemCell = e.Item.Cells[1]; TableCell priceCell = e.Item.Cells[2]; string item = itemCell.Text; string price = priceCell.Text;
if (((LinkButton)e.CommandSource).CommandName == "AddToCart") { dr[0] = item; dr[1] = price; Cart.Rows.Add(dr); } else { //Remove from Cart
#region Web Form Designer generated code override protected void OnInit(EventArgs e) { // // CODEGEN: This call is required by the ASP.NET Web Form Designer. // InitializeComponent(); base.OnInit(e); }
/// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.Load += new System.EventHandler(this.Page_Load);
Undskyld, det er eksempel 6 jeg har rodet med og som giver fejlen. Ovenstående er koden til eksempel 5. Jeg har lagt eksempel 6 koden ind istedet i mit projekt, men det giver samme fejl...
#region Web Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.components = new System.ComponentModel.Container(); } #endregion } }
Hvis aspx-filen er interessant ser den således ud:
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="DataGrid.WebForm1" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <HTML> <body style="FONT: 10pt verdana"> <form runat="server" ID="Form1"> <h3><font face="Verdana">Using an Edit Command Column in DataGrid</font></h3> <asp:DataGrid id="MyDataGrid" runat="server" BorderColor="black" BorderWidth="1" CellPadding="3" Font-Name="Verdana" Font-Size="8pt" HeaderStyle-BackColor="#aaaadd" OnEditCommand="MyDataGrid_Edit" OnCancelCommand="MyDataGrid_Cancel" OnUpdateCommand="MyDataGrid_Update" AutoGenerateColumns="false">
uhm, nu skiftede jeg namespace navnet ud med DataGridTest i Global.asax og i aspx filen... nu virker det. Mystisk! Må namespacet ikke have samme navn, som solution og projektet?
jo det er der ingen problemer i, men det kan være at den kløjs i at der er en klasse der hedder datagrid (selvom den egentlig ikke burde). mvh
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.