static void Main(string[] args)
{
IFileProvider fileProvider = new PhysicalFileProvider(Environment.CurrentDirectory);
Action<object> callback = null;
IDisposable register = null;
callback = _ =>
{
register.Dispose();
LoadFileAsync(fileProvider);
register =fileProvider.Watch("a.txt").RegisterChangeCallback(callback, null);
};
register = fileProvider.Watch("a.txt").RegisterChangeCallback(callback, null);
Console.ReadLine();
}
public static async void LoadFileAsync(IFileProvider fileProvider)
{
Stream stream = fileProvider.GetFileInfo("a.txt").CreateReadStream();
{
byte[] buffer = new byte[stream.Length];
await stream.ReadAsync(buffer, 0, buffer.Length);
stream.Close();
Console.WriteLine(Encoding.ASCII.GetString(buffer));
}
}