如何从一个类中获取值,用于另一个类

本文关键字:获取 另一个 用于 一个 | 更新日期: 2023-09-27 18:27:10

我真的对此很陌生,但我有三个类,其中一个类使用命令行要求用户按1或2回答问题,然后我使用get; set;在另一个类中收集信息。

我想把这些信息写进一个文本文档中。问题是,我使用StreamWriter的类无法识别我用来定义其他类中信息的单词。任何帮助都会很棒。这就是我想要信息的地方。

StreamWriter writer = new StreamWriter(@"C:'Users'Dan'Documents'testText.txt");
writer.WriteLine("Passenger Information" //want the SeatSelection in here);
writer.Close();    

原始信息来自这里。尽管在这个代码中,它识别的是单词"SeatSelection"?为什么它承认这里而不承认上面?

Console.Clear();
Console.WriteLine("Please select first or third class for your trip. ");
Console.WriteLine("1) First Class Compartment.");
Console.WriteLine("2) Third Class with Compartments.");
Console.WriteLine("3) Car C Open seating.");
Console.WriteLine("4) Car D Open seating.");
Console.WriteLine("5) Return to booking main menu.");
bool validInput = false;
do
{
    validInput = true;
    ConsoleKeyInfo key = Console.ReadKey();
    switch (key.Key)
    {
        case ConsoleKey.D1:
        case ConsoleKey.NumPad1:
            seatClass.SeatSelection = "First Class";
            FirstClass();
            break;
        case ConsoleKey.D2:
        case ConsoleKey.NumPad2:
            seatClass.SeatSelection = "Third Class Compartment";
            ThirdClassCompartments();
             break;

如何从一个类中获取值,用于另一个类

我不确定您的应用程序结构是什么,但您需要以下内容:

var seatClass = UserInterface.GetSeatClass();
StreamWriter writer = new StreamWriter(@"C:'Users'Dan'Documents'testText.txt");
writer.WriteLine("Passenger Information" + seatClass.SeatSelection);
writer.Close();

其中,我创造性地插入了一个想象中的UserInterface静态类,该类从它的GetSeatClass方法返回SeatClass的新实例:

public static class UserInterface
{
    public static SeatClass GetSeatClass()
    {
        var seatClass = new SeatClass();
        //code here that assigns values to seatClass
        return seatClass;
    }
}

我可以用更多的信息给你一个更好的答案。请不要犹豫,提出任何问题。(很抱歉,当你刚开始的时候,我使用了一个静态类。如果需要,我可以解释。)

您可以使用此

var filePath = @"C:'Users'Dan'Documents'testText.txt";
var lines = new[] {"a line content"};
System.IO.File.AppendAllLines(filePath, lines);

而不是StreamWriter之类的东西。