0

他のクラスのメソッドでパブリック クラスのプロパティを参照しようとしていますが、適切に行ってはなりません。助けてくれる人はいますか?ExtractData( Event special.Day ) の部分です。

public static List<Event> ExtractData(Event special.Day)
{
   int intChosenDay = special.Day;  

    StreamReader textIn =
    new StreamReader(
    new FileStream(path, FileMode.OpenOrCreate, FileAccess.Read));

     //create the list
     List<Event> events = new List<Event>();



     string[] lines = File.ReadAllLines(path);

     for (int index = 4; index < lines.Length; index += 5)
     {
        Event special = new Event();
        special.Day = Convert.ToInt32(lines[index - 4]);
        special.Time = (lines[index - 3]);
        special.Price = Convert.ToDouble(lines[index - 2]);
        special.StrEvent = lines[index - 1];
        special.Description = lines[index];
        events.Add(special);
     }

     textIn.Close();

     return events;

}
4

2 に答える 2

1

パラメータDayをメソッドに渡したい場合は、イベント タイプではなく、そのタイプを指定する必要があります。お気に入り:

public static List<Event> ExtractData(int Day)
{
 //....your code
}

(Day がintタイプの場合は を指定intし、それ以外の場合はそれに応じてタイプを指定します。

後で次のように呼び出すことができます。

Events event = new Event();
var list = ExtractData(event.Day);

は静的メソッドであるためExtractData、クラスの外部から呼び出す場合は、次のようなクラス名で呼び出す必要があります。

var list = Event.ExtractData(event.Day); //if the class name is Event
于 2013-04-26T04:34:30.583 に答える
0

メソッド定義でメンバー プロパティにアクセスすることはできません。("[型] [変数名]" 形式を介して) 渡された関数引数のみを定義できます。

あなたがやろうとしていることを達成する1つの方法は、メソッド内でプロパティにアクセスし、それを直接使用するか、別の変数に保存することです:

public static List<Event> ExtractData(Event theEvent) {
    int day = theEvent.Day;
    // ...
于 2013-04-26T04:37:16.550 に答える