webForumDet fria alternativet

Lurigt med User Controls

.NET

10 svar · 333 visningar · startad av trexter

Medlem sedan mars 20021 889 inlägg
Frågan#1

Nedanstående kod fungerar utmärkt i min cb-fil men inte när jag lyfter ut den till en User Control.

CS0246: The type or namespace name 'User' could not be found (are you missing a using directive or an assembly reference?)

Jag tycker att felmeddelandet är underligt då jag inkluderar exakt samma assemblies i cb-filen som i ascx-filen.

<%@ Control Language="C#" %>

<%@ import Namespace="System" %>
<%@ import Namespace="System.Collections.Specialized" %>
<%@ import Namespace="System.Configuration" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="myData" %>
<%@ import Namespace="System.Web.UI" %>
<%@ import Namespace="System.Web.UI.WebControls" %>

<script runat="server">
void Page_Load()
{
    NameValueCollection InitParams;
    InitParams = (NameValueCollection)ConfigurationSettings.GetConfig("MyAppSettings");
    string connectionString = InitParams["connString"];

    IDbConnection conn = ConnectionFactory.makeConnection(connectionString);
    [b]IDbCommand commPoster = ConnectionFactory.makeCommand(conn, "select count(Xgammal) from consigliere where Xgammal = 0 and Xusrid =" + Int32.Parse(User.Identity.Name) + "");[/b]

    conn.CreateCommand();
    conn.Open();

    int intPoster = Convert.ToInt32(commPoster.ExecuteScalar());
    if ((int)intPoster == 1)
        cons_nya.Text = "("+intPoster.ToString() + " nytt) ";
    if ((int)intPoster > 1)
        cons_nya.Text = "("+intPoster.ToString() + " nya) ";
    conn.Close();
}
</script>
Meny: <asp:Label id="cons_nya" runat="server"></asp:Label>

:)

Medlem sedan okt. 20005 273 inlägg
#2

Detta är en chansning men testa att använda:

[red]
HttpContext.Current.User.Identity.Name
[/red]

istället ;)

mv icaaq

Medlem sedan mars 20021 889 inlägg
#3

Ah, men du är då för rar! ;)

Medlem sedan okt. 20005 273 inlägg
#4

Funkar det?

Medlem sedan mars 20021 889 inlägg
#5

Jepp! Måste vara att den assemblyn inkluderas aut. i ordinarie .aspx-filer men inte i dessa!? :)

Medlem sedan mars 20021 889 inlägg
#6

Ett annat problem dock. i .ascx

         IDbConnection conn = ConnectionFactory.makeConnection(connectionString);
Exception Details: System.ArgumentException: Keyword not supported: 'driver'.
        public static IDbConnection makeConnection (string connectionString)
        {
            switch (connectionType)
            {
                case ((int)connectionTypes.SQLServer):
                    return (IDbConnection)new SqlConnection(connectionString);
                case ((int)connectionTypes.ODBC):
                    return (IDbConnection)new OdbcConnection(connectionString);
                case ((int)connectionTypes.OleDb):
                    return (IDbConnection)new OleDbConnection(connectionString);
            }
        //no match
        return null;
        }

Samma sak här. Koden fungerade innan men inte i kontrollen.

Medlem sedan mars 20021 889 inlägg
#7

Hmm, felet dyker bara upp ibland.

Medlem sedan okt. 20005 273 inlägg
#8

Det verkar som din connectionstring felar. Hur ser den ut?

Medlem sedan mars 20021 889 inlägg
#9
"DRIVER={MySQL ODBC 3.51 Driver};SERVER=127.0.0.1;DATABASE=a;UID=trexter;OPTION=3"

Men jag har inte fått felet på länge nu ántagligen borde det ha varit ett tillfälligt fel om inte annat.

Medlem sedan mars 20021 889 inlägg
#10

fortfarande kvarstår problemet

Medlem sedan mars 20021 889 inlägg
#11

ingen?

261 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
131 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)