문제가 있습니다. 데이터베이스에서 데이터를 가져 와서이 데이터를 txt 파일로 생성하는 앱이 있습니다. 처음에는이 데이터를 txt 파일로 생성하기위한 버튼을 만들었지 만 이제는이 애플리케이션에서 txt 파일에 5 분마다 데이터를 생성하고 버튼없이 이전 파일을 덮어 쓰고 싶습니다. 첫 번째 파일은 5 생성되도록매 5 분마다 txt 파일 생성 C# wpf
는 (타이머가 파일을 쓰기 전에 경과해야하는 것을 명심 :
public partial class MainWindow : Window
{
private static Timer aTimer;
private List<tw__Towar> someData;
public MainWindow()
{
InitializeComponent();
}
private void Generate()
{
string path = @"c:\some path";
var createFile = someData.Select(k => $"{k.tw_Id}\t" + $"{k.column}\t" + $"{k.column2}\t" + $"{k.column3}\t"
);
File.WriteAllLines(path, createFile);
Process.Start(path);
System.Timers.Timer aTimer = new System.Timers.Timer();
aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
aTimer.Interval = some time;
aTimer.Enabled = true;
}
private void OnTimedEvent(object sender, ElapsedEventArgs e)
{
Generate();
Console.WriteLine("It works");
}
private void LoadData()
{
DataClasses1DataContext cd = new DataClasses1DataContext();
someData = (from p in cd.datavbase where p.column != null && p.column != ""
select p).ToList();
GT1.ItemsSource = someData;
}
private void Button_Click(object sender, RoutedEventArgs e)
{
LoadData();
}
//private void Button_Click_1(object sender, RoutedEventArgs e)
//{
// Generate();
//}
}
무엇이 문제입니까? 질문을 업데이트하십시오. –
문제가 작동하지 않습니다. 앱이 내가 만든 경로에 txt 파일을 생성하지 않습니다. – manhart
어디서 타이머를 시작하는지 알 수 없습니다 ... 어쩌면 그게 문제입니다. 그리고'Generate' 메쏘드 안에서 타이머를 초기화해서는 안된다. 왜냐하면 타이머 만 다시 시작해야하기 때문이다. – Ben