我试图在其他类'方法中引用我的公共类属性,但我不能正确地执行它。有人可以提供帮助吗?它是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;
}
答案 0 :(得分:1)
如果要将参数Day
传递给方法,则应指定其类型,而不是事件类型。像:
public static List<Event> ExtractData(int Day)
{
//....your code
}
(如果日期为int
类型,则指定int
,否则请相应指定类型。
稍后您可以将其称为:
Events event = new Event();
var list = ExtractData(event.Day);
由于ExtractData
是一个静态方法,如果你是从类外部调用它,你必须使用类名称来调用它:
var list = Event.ExtractData(event.Day); //if the class name is Event
答案 1 :(得分:0)
您无法在方法定义中访问成员属性,只能定义传入的函数参数(通过“[type] [variable-name]”格式)。
实现您尝试做的事情的一种方法是在您的方法中,您可以访问该属性并直接使用它或将其存储到另一个变量:
public static List<Event> ExtractData(Event theEvent) {
int day = theEvent.Day;
// ...