Toon posts:

[ASP.NET] Is dit een bug of doe ik wat fout?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Beste tweeeeeeekers,

Ben bezig met een website in ASP.NET, ben er sinds maandag mee bezig voor het eerst in m'n leven en heb 't wel zo'n beetje door. Maar nu valt me iets op wat ik gewoon niet begrijp, en ik denk dat dit een bug is, of misschien doe ik wat fout?

ASP.NET:
1
<%@ Control Language="VB" AutoEventWireup="false" CodeFile="~/add_drawing.ascx.vb" Inherits="WebUserControl" %>


Het gaat om de CodeFile attribuut. En dit is hoe het allemaal gaat:
Ik compileer de website en alles gaat goed.
Dan ga ik terug, verander wat code en dan zegt ie OPEENS:
code:
1
Error   73  'CreateResourceBasedLiteralControl' is not a member of 'ASP.add_drawing_ascx'.  **\**\add_drawing.ascx  1


Nou ga ik naar het ASPX bestand waar deze control voor is, dan haal ik de ~/ weg aan het begin bij de registries en dan doet ie het wel: bijv.
code:
1
2
3
<%@ Register Src="~/manage_menu.ascx" TagName="manage_menu" TagPrefix="uc1" %>
OF
<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false" CodeFile="~/add_drawing.aspx.vb" Inherits="add_drawing" title="Drawing Database" %>


Daarna compileer ik het opnieuw en dan doet ie het weer NIET.

Ik moet dus de hele tijd "schakelen" tussen ~/ ervoor en eruit.

Hoe de FOCK zit dit? Ik word er knetter van. Google geeft me geen antwoorden. Iets met DLLs ofzo had ik gelezen, maar voor een ASP.NET n00b die ik ben snap ik er geen zak van. Heb net dat ASP.NET is omslachtig topic gelezen en ja ik ben het ermee eens. :P

Maar mijn vraag... doe ik iets fout wat ik niet snap, of is dit een bug en zo ja, is er een update van VS Express?

Verwijderd

Zorg (helemaal als beginner) dat je geen code overneemt maar dit door VWD laat genereren.

Als je gebruik wilt maken van een control (de ascx bestanden) zet dan je ASPX in design view en sleep het te gebruiken control op je pagina.

Verwijderd

Topicstarter
Verwijderd schreef op donderdag 01 februari 2007 @ 14:45:
Zorg (helemaal als beginner) dat je geen code overneemt maar dit door VWD laat genereren.

Als je gebruik wilt maken van een control (de ascx bestanden) zet dan je ASPX in design view en sleep het te gebruiken control op je pagina.
Ik heb geen keus. Ik moet namelijk het 50 pagina grote project overnemen van de vorige stagair. Ik moet zeggen dat ik veel leer hier dus in dat opzicht in het erg goed, alleen ik kom zoveel rare dingen tegen. Maar ik ben dus in 20,000 regels aan code gegooit en mag nu fijn gaan uitzoeken hoe het werkt.

Maar nu krijg ik dus dit :S De ene keer compiled ie wel, met de fout erbij, de andere keer niet, dan verander ik iets wat er niks mee te maken heeft en dan compiled ie weer niet. :S Rare jongens bij microsoft.

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 14:04

TeeDee

CQB 241

Verwijderd schreef op donderdag 01 februari 2007 @ 14:59:
[...]

Ik heb geen keus. Ik moet namelijk het 50 pagina grote project overnemen van de vorige stagair. Ik moet zeggen dat ik veel leer hier dus in dat opzicht in het erg goed, alleen ik kom zoveel rare dingen tegen. Maar ik ben dus in 20,000 regels aan code gegooit en mag nu fijn gaan uitzoeken hoe het werkt.
Ik gok erop dat er uiteraard ook niks gedocumenteerd is? :D
Rare jongens bij microsoft.
Die mag je me uitleggen.

Verder: ben je wel eens stap voor stap door je code heen gegaan? Dus met de Debugger?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Mastermind
  • Registratie: Februari 2000
  • Laatst online: 29-11 15:35
TeeDee schreef op donderdag 01 februari 2007 @ 15:04:
[...]
Ik gok erop dat er uiteraard ook niks gedocumenteerd is? :D
:D

Post je web.config trouwens eens?

  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 13-12-2024
Wat ik begrijp is dat je een usercontrol (ascx) gebruikt in een usercontrol (andere ascx)

de ~/ geeft aan dat de url geresolved wordt vannuit de root van je webapp.

Er zit dus waarschijnlijk een foutje in je structuur van de website.

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


  • barfieldmv
  • Registratie: Maart 2004
  • Laatst online: 10-10 12:36
Mastermind schreef op donderdag 01 februari 2007 @ 15:24:
[...]
:D

Post je web.config trouwens eens?
Verder wil ik graag je creditcard data zien, naam leeftijd ftp server met naam en wachtwoor en de naam van je hondje/kat. (hieronder ben ik iets serieuzer)

Aspx en .cs bestanden worden door de compiler door elkaar gemixed. Dit kan wel eens fout gaan als de mixer bestanden niet kan vinden, soms als er dus een ~/ voor staat kan de mixer een fout verzinnen en dan werkt de uiteindelijke code niet. Probeer de vervelnde controlls eens te verwijderen en dan weer stukje voor stukje na te bouwen in VS.net, grote kans dat de nieuwe versie niet dezelfde problemen heeft.

Verwijderd

Topicstarter
Nope, niks gedocumenteerd :D Ik mag dat nu gaan doen. Prutser voorgangers.

web.config: (zonder wachtwoorden ;))
XML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<?xml version="1.0"?>
<!-- 
    Note: As an alternative to hand editing this file you can use the 
    web admin tool to configure settings for your application. Use
    the Website->Asp.Net Configuration option in Visual Studio.
    A full list of settings and comments can be found in 
    machine.config.comments usually located in 
    \Windows\Microsoft.Net\Framework\v2.x\Config 
-->
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
    <appSettings/>
    <connectionStrings>
  <add name="DrawingDB" connectionString="Dsn=DrawingDB" providerName="System.Data.Odbc" />
  <add name="conDrawDB" connectionString="Dsn=conDraw;uid=******"
   providerName="System.Data.Odbc" />
  <add name="connDrawDB" connectionString="Dsn=connDrawDB;uid=******"
   providerName="System.Data.Odbc" />
  <add name="LocalDatabase" connectionString="Dsn=localDB;uid=*****"
   providerName="System.Data.Odbc" />
  <add name="MyLocaldb" connectionString="Dsn=MySQLlocal" providerName="System.Data.Odbc" />
 </connectionStrings>
    <system.web>
        <!-- 
            Set compilation debug="true" to insert debugging 
            symbols into the compiled page. Because this 
            affects performance, set this value to true only 
            during development.

            Visual Basic options:
            Set strict="true" to disallow all data type conversions 
            where data loss can occur. 
            Set explicit="true" to force declaration of all variables.
        -->
        <trace enabled="true" />
  <compilation debug="true" strict="false" explicit="true"/>
        <pages>
            <namespaces>
                <clear/>
                <add namespace="System"/>
                <add namespace="System.Collections"/>
                <add namespace="System.Collections.Specialized"/>
                <add namespace="System.Configuration"/>
                <add namespace="System.Text"/>
                <add namespace="System.Text.RegularExpressions"/>
                <add namespace="System.Web"/>
                <add namespace="System.Web.Caching"/>
                <add namespace="System.Web.SessionState"/>
                <add namespace="System.Web.Security"/>
                <add namespace="System.Web.Profile"/>
                <add namespace="System.Web.UI"/>
                <add namespace="System.Web.UI.WebControls"/>
                <add namespace="System.Web.UI.WebControls.WebParts"/>
                <add namespace="System.Web.UI.HtmlControls"/>
            </namespaces>
        </pages>
        <!--
            The <authentication> section enables configuration 
            of the security authentication mode used by 
            ASP.NET to identify an incoming user. 
        -->
        <authentication mode="Windows"/>
        <!--
            The <customErrors> section enables configuration 
            of what to do if/when an unhandled error occurs 
            during the execution of a request. Specifically, 
            it enables developers to configure html error pages 
            to be displayed in place of a error stack trace.

        <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
            <error statusCode="403" redirect="NoAccess.htm" />
            <error statusCode="404" redirect="FileNotFound.htm" />
        </customErrors>
        -->
    </system.web>
</configuration>
4of9 schreef op donderdag 01 februari 2007 @ 15:44:
Wat ik begrijp is dat je een usercontrol (ascx) gebruikt in een usercontrol (andere ascx)

de ~/ geeft aan dat de url geresolved wordt vannuit de root van je webapp.

Er zit dus waarschijnlijk een foutje in je structuur van de website.
Ja dit is het, ascx in een ascx

[ Voor 5% gewijzigd door Verwijderd op 01-02-2007 15:55 ]


  • Not Pingu
  • Registratie: November 2001
  • Laatst online: 20-11 21:40

Not Pingu

Dumbass ex machina

Verwijderd schreef op donderdag 01 februari 2007 @ 14:35:
Nou ga ik naar het ASPX bestand waar deze control voor is, dan haal ik de ~/ weg aan het begin bij de registries en dan doet ie het wel: bijv.
code:
1
2
3
<%@ Register Src="~/manage_menu.ascx" TagName="manage_menu" TagPrefix="uc1" %>
OF
<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false" CodeFile="~/add_drawing.aspx.vb" Inherits="add_drawing" title="Drawing Database" %>
Zo te zien geef je hier de codefile van een usercontrol op in een page? Dat lijkt me idd niet te werken omdat de codefile natuurlijk een partial class van een heel andere class is en (neem ik aan) ook System.Web.Control inherit ipv. System.Web.Page.

Vuistregel: als je beginner bent in een bepaalde taal/platform en er gaat iets fout, ga er dan altijd vanuit dat de fout bij jou ligt ipv. de implementatie van het platform :+

[edit]Hm, toch niet. Wel verwarrend dat 2x dezelfde classname wordt gebruikt. Waarschijnlijk gaat het daardoor ook fout?

[ Voor 20% gewijzigd door Not Pingu op 02-02-2007 09:46 ]

Certified smart block developer op de agile darkchain stack. PM voor info.


Verwijderd

Topicstarter
Ik heb geen flauw idee?

Ben werkelijk waar hier in gegooid als stageopdracht, zonder voorkennis, zonder iets dan ook, heb nog nooit met ASP.NET gewerkt, wel met VB.NET en C#.NET, dus de code erachter is niet onbekend...Maar ik moet uit deze brei van code iets kunnen maken, zonder commentaar en als er commentaar staat dan is het "open database connection here" en vervolgens zie je connection.open() staan, nou nou dat was hulpzaam.

Dit gebeurd in 50 pagina's, elke pagina is minimaal 350 regels groot... 8)7 ;(

Dus ik snap er geen kont van :?

[ Voor 20% gewijzigd door Verwijderd op 02-02-2007 12:25 ]


  • EfBe
  • Registratie: Januari 2000
  • Niet online
Dit is raar:
<%@ Control Language="VB" AutoEventWireup="false" CodeFile="~/add_drawing.ascx.vb" Inherits="WebUserControl" %>

In je CodeFile, daarin definieer je (of is voor je gedefinieerd) de class, en DIE inherit van WebUserControl. Dus in add_drawing.ascx.vb staat de class, die naam moet je daar invullen.

verder is ~/ voor de codefile name wat bizar, want de ascx en de ascx.vb/cs files staan altijd in dezelfde folder. Dus die ~/ zou ik weghalen.

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


Verwijderd

Topicstarter
EfBe schreef op vrijdag 02 februari 2007 @ 12:57:
Dit is raar:
<%@ Control Language="VB" AutoEventWireup="false" CodeFile="~/add_drawing.ascx.vb" Inherits="WebUserControl" %>

In je CodeFile, daarin definieer je (of is voor je gedefinieerd) de class, en DIE inherit van WebUserControl. Dus in add_drawing.ascx.vb staat de class, die naam moet je daar invullen.

verder is ~/ voor de codefile name wat bizar, want de ascx en de ascx.vb/cs files staan altijd in dezelfde folder. Dus die ~/ zou ik weghalen.
Als ik dat weghaal dan doet ie het soms niet, maar als ik het erbij doe dan doet ie het soms ook niet.... ;(

  • EfBe
  • Registratie: Januari 2000
  • Niet online
Wat voor project type gebruik je: een web site project (dus folder based, alles in de folder is alles in het project) of een web application project (net als andere .net projects) ?

Hoe test je? Op een server of lokaal? Indien op een server, is die loadbalanced? Indien lokaal, stel IIS zo in dat deze een virtual directory heeft die naar je website folder wijst en zet het als de default webserver in de project properties.

Verder is een stage niet gelijk aan werk, je moet iets leren. Zomaar iemand opzadelen met het opruimen van de stront van een ander zonder hulp is zinloos. Dus vraag aan je stagebegeleider om je te helpen hierbij want dit kost je anders toch teveel tijd.

[ Voor 23% gewijzigd door EfBe op 02-02-2007 14:30 ]

Creator of: LLBLGen Pro | Camera mods for games
Photography portfolio: https://fransbouma.com


Verwijderd

Topicstarter
EfBe schreef op vrijdag 02 februari 2007 @ 14:29:
Wat voor project type gebruik je: een web site project (dus folder based, alles in de folder is alles in het project) of een web application project (net als andere .net projects) ?

Hoe test je? Op een server of lokaal? Indien op een server, is die loadbalanced? Indien lokaal, stel IIS zo in dat deze een virtual directory heeft die naar je website folder wijst en zet het als de default webserver in de project properties.

Verder is een stage niet gelijk aan werk, je moet iets leren. Zomaar iemand opzadelen met het opruimen van de stront van een ander zonder hulp is zinloos. Dus vraag aan je stagebegeleider om je te helpen hierbij want dit kost je anders toch teveel tijd.
Ik test 't lokaal, en tis gewoon een site alsin bestandjes in een foldertje.

Hij gaf me net een suggestie die wel werkte, als ik Rebuild All doe, dan werkt de hele meuk weer wel zondat dat ik ~/ moet weghalen of toevoegen... leuk dat dat is opgelost, weet ik dat ook weer - maar hoe komt dit?

  • Not Pingu
  • Registratie: November 2001
  • Laatst online: 20-11 21:40

Not Pingu

Dumbass ex machina

Kijk eens in zowel add_drawing.aspx.vb als add_drawing.ascx.vb, bovenaan zou je iets dergelijks moeten zien:

Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Public Partial Class add_drawing
    Inherits System.Web.UI.Page

    ...

End Class

of:


Public Partial Class add_drawing
    Inherits System.Web.UI.UserControl

    ...

End Class

Certified smart block developer op de agile darkchain stack. PM voor info.

Pagina: 1