2016-05-11 5 views
-2

Ich habe diesen Code verwendet und versuchen, Textdatei zu laden. Aber es ist ein Fehler aufgetreten. Der Fehler zeigt in "loaddate()" ich habe returen Wert auch // hier habe ich versucht eine Liste zu erstellen und Daten in die Liste zu laden ...wie Datei in binärem formet laden

Bitte geben Sie mir eine Lösung um dieses Problem zu beheben. Vielen Dank.

public partial class RegisterUser : Form 
{ 
    List<Log> list = null; 

    public RegisterUser() 
    { 
     InitializeComponent(); 
     // list = new List<Log>(); 
     list = loadData(); 
    } 

    public List<Log> loadData() 
    { 
     List<Log> lst = null; 
     if (File.Exists("Login.bin")) 
     { 
      Stream stream = File.Open("Login.bin", FileMode.Open); 
      BinaryFormatter bformatter = new BinaryFormatter(); 
      lst = (List<Log>)bformatter.Deserialize(stream); 
      stream.Close(); 

     } 
     else 
     { 
      lst = new List<Log>(); 
     } 
     return lst; 
    } 
} 
+2

Welchen Fehler bekommen Sie? Ist die Datei von einem anderen Prozess gesperrt? – Sammy

+0

Inkonsistente Zugänglichkeit: Rückgabetyp 'System.Collections.Generic.List ' ist weniger zugänglich als die Methode 'XYZ_System.RegisterUser.loadData()' \t E: \ Degree Assignment \ Anwendungsentwicklung-Semester 1 \ XYZ_System \ XYZ_System \ RegisterUser.cs XYZ_System –

+2

machen Sie Ihre Log-Klasse Öffentlichkeit – Sammy

Antwort

1

Vielleicht möchten Sie eine kleine Erklärung für Ihr Problem:

Sie haben eine öffentliche Klasse RegisterUser. In dieser öffentlichen Klasse haben Sie eine öffentliche Funktion loadData. So ist der Rückgabewert in allen anderen Klassen sichtbar.

Sie geben jedoch einen Typ zurück, der von allen anderen Klassen nicht sichtbar ist.

Das ist schlecht. Sie könnten die Funktion aufrufen, aber Sie können den Rückgabetyp nicht sehen. Deshalb muss die Log Klasse auch öffentlich sein.

wenn Ihre Klasse RegisterUser würde private oder internal sein, als die Log Klasse den gleichen Zugriffstyp haben könnte.

Hoffe das hilft dir für das nächste Mal.

+0

ja .. sicher. Danke für das Teilen Ihres Wissens ... –

+0

ja .. sicher. Danke, dass Sie Ihr Wissen geteilt haben ... –