IDE zeigt: "Der Wert kann nicht bereitgestellt werden: Der Hostwert wurde nicht gefunden."

  • VB.NET
  • .NET 4.0

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von DerSmurf.

    IDE zeigt: "Der Wert kann nicht bereitgestellt werden: Der Hostwert wurde nicht gefunden."

    Hallo
    Ich bin gerade dabei eine Auswertung für Umsatzeinträge zu schreiben.
    Dafür habe ich auf eine Form ein Listview, zwei Comboboxen und einen Button erstellt.
    Mit den Comboboxen kann der User den Monat und das Jahr auswählen, in der Listview werden die Werte angezeigt (bzw. sollen die Werte angezeigt werden - bin erst am Anfang).
    Der Button dient nur dazu das Makro zu starten.
    Bisher habe ich erst den Code geschrieben, um aus den Combobox auswahlen (z.B. "März"; "2018") Daten zusammenzubauen.
    Mein Makro soll also den ersten Tag dieses Monats ausgeben (01.03.2018), den letzten Tag des Monats (31.03.2018), sowie die Anzahl der Tage.
    Die Daten 01. - 31. 03. wollte ich dann Testweise erstmal in mal Listview schreiben.
    Alles funktioniert einwandfrei und ich brauche (erstmal) keine Hilfe beim Code an sich.
    Aber beim Debuggen ist mir dann aufgefallen, dass ich mir die Belegung der Datumsvariablen in der IDE nicht anzeigen lassen kann.
    Statt des Wertes erhalten ich die Meldung
    "Der Wert kann nicht bereitgestellt werden: Der Hostwert wurde nicht gefunden."
    Über eine Messagebox kann ich mir aber die korrekten Werte ausgeben lassen und auch die Makros funktionieren.

    Ist das ein Fehler der IDE, oder passt bei mir eine Einstellung nicht?
    Hier noch der Code:

    VB.NET-Quellcode

    1. Private Sub FillList()
    2. 'Anzahl der Warengruppen ermitteln
    3. Dim GroupCount As Integer
    4. GroupCount = DSIncome.ProductGroup.Count
    5. 'erste Spalte für Datumswerte anlegen
    6. ListEvaluation.Columns.Add("Datum", 100, HorizontalAlignment.Left)
    7. Dim Groupname As String
    8. 'entsprechend Spalten anlegen
    9. For i = 0 To GroupCount - 1
    10. 'Name aus BindingSource lesen
    11. Dim ProductGroup = DirectCast(DirectCast(ProductGroupBindingSource(i), DataRowView).Row, DSIncome.ProductGroupRow)
    12. Groupname = ProductGroup.Name
    13. 'Spalte für jede Warengruppe anlegen
    14. ListEvaluation.Columns.Add(Groupname, 100, HorizontalAlignment.Center)
    15. Next
    16. 'Start und Enddatum aus Comboboxen ermitteln
    17. Dim StartDate As Date
    18. Dim EndDate As Date
    19. Dim Numberofdays As Integer
    20. If Not GetDates(StartDate, EndDate, Numberofdays) Then
    21. MessageBox.Show("ungültige Datumsauswahl")
    22. Exit Sub
    23. End If
    24. 'Schleife durch jeden Tag des Monats
    25. Dim TempDate As Date
    26. For i = 0 To Numberofdays - 1
    27. TempDate = StartDate.AddDays(i)
    28. ListEvaluation.Items.Add(TempDate.ToString)
    29. Next
    30. End Sub

    VB.NET-Quellcode

    1. Private Function GetDates(ByRef Startdate As Date, ByRef EndDate As Date, ByRef Numberofdays As Integer) As Boolean
    2. Dim strMonth As String = cbMonth.Text
    3. Dim year As Integer
    4. 'Prüfen ob cbyear numerisc ist
    5. If Not Integer.TryParse(cbYear.Text, year) Then
    6. Return False
    7. End If
    8. Dim Month As Integer
    9. Select Case strMonth
    10. Case = "Januar" : Month = 1
    11. Case = "Februar" : Month = 2
    12. Case = "März" : Month = 3
    13. Case = "April" : Month = 4
    14. Case = "Mai" : Month = 5
    15. Case = "Juni" : Month = 6
    16. Case = "Juli" : Month = 7
    17. Case = "August" : Month = 8
    18. Case = "September" : Month = 9
    19. Case = "Oktober" : Month = 10
    20. Case = "November" : Month = 11
    21. Case = "Dezember" : Month = 12
    22. Case Else
    23. Return False
    24. End Select
    25. Startdate = Date.Parse("01." & Month & "." & year)
    26. Numberofdays = Integer.Parse(DateTime.DaysInMonth(year, Month).ToString)
    27. EndDate = Startdate.AddDays(Numberofdays - 1)
    28. Return True
    29. End Function

    Und die Solution hab ich auch mal rangeschmissen. Dieser "Fehler" betrifft nur die frmEvaluation. Rest einfach ignorieren.
    Dateien
    • Income.zip

      (122,96 kB, 21 mal heruntergeladen, zuletzt: )

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

    Das ist ein aktueller VS-Bug, zu finden unter diesen BugReport-Threads:Die aktuelle Lösung:

    Quellcode

    1. Add to .\My Project\AssemblyInfo.vb of Startup project:
    2. <Assembly: DebuggerDisplay("{ToString}", Target:=GetType(Date))>


    Also: Projektmappen-Explorer aufmachen, Klick auf [Alle Dateien anzeigen], [>] My Project -> AssemblyInfo.VB und dort die o.g. Zeile reinschreiben. Dann geht's wieder.
    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.
    @DerSmurf Wenn ich Dein Programm starte, passiert nix unerwartetes.
    Was muss ich tun, um Deinen Effekt zu reproduzieren?
    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).
    Programmierfragen über PN / Konversation werden ignoriert!
    Den gewählten Monat bekommt man einfacher indem man den SelectedIndex der zugehörigen ComboBox um eins erhöht. Statt der Select/Case Variante...
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    @RodFromGermany: Es geht darum, dass beim aktuellen VS kein Date-Wert angezeigt werden kann, wenn man z.B. einen Haltepunkt setzt und sich den Wert einer Date-Variablen anzeigen lassen will.
    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.

    VaporiZed schrieb:

    beim aktuellen VS
    Ich wusste doch, dass es gut ist, das 19er Studio (noch) nicht zu installieren.
    Das ist durchaus vergleichbar mit nem Industrie-PC, der mit Win7 läuft.
    Never change a running system.
    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).
    Programmierfragen über PN / Konversation werden ignoriert!
    @DerSmurf Die Monatsnamen in eine ComboBox zu packen geht mit nem Einzeiler:
    Aktuellen Monat in ComboBox gleich anzeigen lassen
    Wenn Du der ComboBox dann noch die Eigenschaft DropDownStyle = DropDownList gibst, kannst Du nur auswählen, nix mehr reinschreiben.
    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).
    Programmierfragen über PN / Konversation werden ignoriert!