Verständnissproblem mit Random

  • VB.NET
  • .NET 4.5

Es gibt 15 Antworten in diesem Thema. Der letzte Beitrag () ist von EaranMaleasi.

    Verständnissproblem mit Random

    Hallo

    vieleicht kann mir jemand folgende Situation erklären.

    Wenn ich ein neues Projekt erstelle mit dem Namen "zufall" und
    folgenden Code habe

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim zufall As New Random
    3. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    4. Label1.Text = CType(zufall.Next(1, 5), String)
    5. End Sub
    6. End Class


    dann kann ich " New Random " anwenden,
    wennich aber ein neues Projekt mit dem Namen "Random" erstelle
    dann muß ich " New System.Random " anwenden sonst bekomm ich einen Fehler.
    Kann es sein das es mit dem Namen des Projektes etwas zutun hat.

    L.G. Willi
    Nö, liegt daran, dass in den Projekteinstellungen bei Verweisen in der Rubrik "importierte Namespaces" der Namespace System nicht angehakt ist.
    Liegt wohl doch am Projekttyp. Was hast Du denn, wo es nicht klappt?
    Und: Welche Fehlermeldung denn? Bitte genauen Wortlaut.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
    Dann nochmal: Welche Fehlermeldung? Entweder genauer Wortlaut oder Screenshot per [Erweiterte Antwort] hochladen, bitte.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
    Wie lautet Deine Codezeile und was für einen Projekttyp hast Du?
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
    Einfach, wenn du ein Projekt mit dem Namen Random anlegst, kann der Compiler nicht zwischen der Klasse Random aus dem Namespace System, und deinem Namespace Random unterscheiden. Deswegen musst du dann System.Random schreiben.

    Daher immer versuchen Projekten eindeutige Namen zu geben. Bin ich zuletzt erst mit einer Library in ein ähnliches Problem gestolpert, da einer der Unternamespaces MeineLibrary.System war. Sobald ich den Namespace woanders eingebunden hatte, konnte nicht mehr zwischen System und MeineLibrary.System unterschieden werden.
    Post-AGB:
    §1 Mit dem Lesen dieses Posts stimmst du den AGB unverzüglich zu
    §2 Ein Widerruf muss innerhalb von 3 Sekunden nach Lesen des Hauptbestandteil des ersten jemals gelesenen Posts erfolgen
    Abs.1 Die Signatur zählt nicht zum Hauptbestandteil des Posts
    §3 Ein erfolgreicher Widerruf zwingt zu einem Besuch bei einem Hypnotiseur oder Neurochirurg, sodass der gelesene Text aus den Erinnerungen entfernt werden kann
    Abs.1 Die Kosten und Risiken sind jeweils selbst zu tragen

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „EaranMaleasi“ ()

    Hallo

    die codezeile

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim zufall As New Random
    3. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    4. Label1.Text = CType(zufall.Next(1, 5), String)
    5. End Sub
    6. End Class


    was meinst du mit Projecttyp ?

    L.G. Willi
    @EaranMaleasi: Joa. Klingt logisch und kann ich nach dem Ausprobieren bestätigen.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.

    papawt schrieb:

    mit dem Namen "zufall"
    Meinst Du Random?
    Welchen Namen trägt Dein Projekt?
    Wie lautet der Haupt-Namespace?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    VB-Fragen über PN / Konversation werden ignoriert!
    @RodFromGermany:

    papawt schrieb:

    wennich aber ein neues Projekt mit dem Namen "Random" erstelle

    EaranMaleasi hat das Minirätsel schon gelöst.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
    bei den Projekteigenschaften -> Anwendung -> Stammnamespace
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Häufig von mir verwendete Abkürzungen: CEs = control elements (Labels, Buttons, DGVs, ...) und tDS (typisiertes DataSet)
    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht in den Spekulatiusmodus gehen.
    Doppelklick auf das rote Kästchen neben dem Titel.
    Post-AGB:
    §1 Mit dem Lesen dieses Posts stimmst du den AGB unverzüglich zu
    §2 Ein Widerruf muss innerhalb von 3 Sekunden nach Lesen des Hauptbestandteil des ersten jemals gelesenen Posts erfolgen
    Abs.1 Die Signatur zählt nicht zum Hauptbestandteil des Posts
    §3 Ein erfolgreicher Widerruf zwingt zu einem Besuch bei einem Hypnotiseur oder Neurochirurg, sodass der gelesene Text aus den Erinnerungen entfernt werden kann
    Abs.1 Die Kosten und Risiken sind jeweils selbst zu tragen