none
Nach Update VS2017 Fehlverhalten des Systems

    Frage

  • Hallo,

    vor ein paar Tagen habe ich VS2017 upgedatet und gestern Analysis Services und Reporting Services.

    Seitdem spinnt das VS2017. Jahrelang bewährte Projekte zeigen im Code-Editor Fehler an (rot unterstrichen), die egentlich keine sind. Ich sage eigentlich, weil sich die Projekte starten lassen unddabei KEINE Fehler erzeugen. Schaut man dann in die Fehlerliste, werden trotzdem welche aufgezeigt. Insbesondere welche, die Custom-Controls betreffen, sodass auch entsprechende Forms, die diese Controls verwenden, nicht mittels Designer öffenen.
    Aber wie gesagt, starten lassen sich die Projekt und laufen auch mit diesen Custom-Controls ohne Probleme.
    Beim Neuerstellen des Projekts (Mappe besteht aus 5 Projekten) gibt es keine Fehler...

    Woran kann das liegen? Muss ich ein erneutes Update abwarten??

    Grüße-


    Dietrich

    Donnerstag, 7. Dezember 2017 15:45

Antworten

  • Hi Dietrich,
    zuerst würde ich die Option Explicit auf On stellen und schrittweise die ausgewiesenen Fehler beseitigen. Dazu ist jeweils nur notwendig, dass nicht deklarierte Variablen deklariert werden. Wenn Du nicht weist, von welchem Typ sie sind, kannst Du erst einmal als Typ Object angeben.

    Im zweiten Schritt würde ich unbedingt Option Strict auf On stellen. Danach sind schrittweise die ausgewiesenen Fehler zu beseitigen, indem einerseits die Typen der Variablen von z.B. Object auf den genutzten Typ verändert werden und dann die noch offenen Fehler mit dem Konvertierungsmethoden ergänzen, so dass immer typsicher gearbeitet wird. Konvertierungsmethoden können sein CType, DirectCast, Convert..., TraCast, ToString() usw.


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks

    • Als Antwort markiert dherrmann Freitag, 8. Dezember 2017 08:46
    Donnerstag, 7. Dezember 2017 20:29

Alle Antworten

  • Hallo Dietrich,

    probier mal, die <Projektmappenname>.suo Datei (nur die .suo, nicht die .sln) zu löschen. Manchmal hilft das.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Donnerstag, 7. Dezember 2017 16:30
  • Hallo Stefan, danke für Tipp, hat aber leider nichts gebracht.

    Ich kriege beim Neuerstellen eines in der Mappe enthaltenen Projekts die Meldung:

    "vbc : warning BC40057: Der in Imports "xxxxxxxx" auf Projektebene angegebene Namespace oder Typ enthält keine öffentlichen Member oder wurde nicht gefunden. Stellen Sie sicher, dass der Namespace oder der Typ definiert ist und mindestens einen öffentlichen Member enthält und der importierte Elementname keine Aliase verwendet."

    Damit kann ich nichts anfangen, zumal diese Meldung schon seit ca. 10 Jahren kommt, sich aber nie so ausgewirkt hat, wie oben beschrieben... Sollte es sich JETZT auswirken?

    Grüße-


    Dietrich

    Donnerstag, 7. Dezember 2017 16:49
  • Hallo Dietrich,

    ich würde den Import des Namespace entfernen oder mal schauen, ob der Verweis auf die Assembly, die den Namespace enthält, korrekt eingebunden ist.

    Falls das nicht hilft, müsstest Du uns mal genauer sagen, welche Fehler genau wo und wann angezeigt werden.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Donnerstag, 7. Dezember 2017 16:52
  • Also mittlerweile habe ich die Funktionalität wieder hinbekommen.
    Als erstes habe ich alle .suo Files aus meinen Projekten gelöscht.

    Dann habe ich die Optionen Option Explicit und Option Strict auf OFF gestellt !?!?

    Nun geht erst mal alles wieder...

    Allerdings die Meldung: BC40057 ... kommt immer noch als Warnung.

    Grüße-


    Dietrich

    Donnerstag, 7. Dezember 2017 19:22
  • Hi Dietrich,
    zuerst würde ich die Option Explicit auf On stellen und schrittweise die ausgewiesenen Fehler beseitigen. Dazu ist jeweils nur notwendig, dass nicht deklarierte Variablen deklariert werden. Wenn Du nicht weist, von welchem Typ sie sind, kannst Du erst einmal als Typ Object angeben.

    Im zweiten Schritt würde ich unbedingt Option Strict auf On stellen. Danach sind schrittweise die ausgewiesenen Fehler zu beseitigen, indem einerseits die Typen der Variablen von z.B. Object auf den genutzten Typ verändert werden und dann die noch offenen Fehler mit dem Konvertierungsmethoden ergänzen, so dass immer typsicher gearbeitet wird. Konvertierungsmethoden können sein CType, DirectCast, Convert..., TraCast, ToString() usw.


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks

    • Als Antwort markiert dherrmann Freitag, 8. Dezember 2017 08:46
    Donnerstag, 7. Dezember 2017 20:29