Tôi đang cố gắng viết cho trình xem sự kiện trong mã C# của mình, nhưng tôi nhận được thông báo "Tham chiếu đối tượng không được đặt thành một thể hiện của đối tượng" tuyệt vời. Tôi đánh giá cao một số trợ giúp với mã này, hoặc có gì sai với nó hoặc thậm chí là một cách tốt hơn để làm điều đó. Dưới đây là những gì tôi có để viết vào nhật ký sự kiện:C# viết cho trình xem sự kiện
private void WriteToEventLog(string message)
{
string cs = "QualityDocHandler";
EventLog elog = new EventLog();
if (!EventLog.SourceExists(cs))
{
EventLog.CreateEventSource(cs, cs);
}
elog.Source = cs;
elog.EnableRaisingEvents = true;
elog.WriteEntry(message);
}
Và đây là nơi mà tôi đang cố gắng để gọi nó là:
private readonly Random _rng = new Random();
private const string _chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
private string RandomString(int size)
{
try
{
char[] buffer = new char[size];
for (int i = 0; i < size; i++)
{
buffer[i] = _chars[_rng.Next(_chars.Length)];
}
return new string(buffer);
}
catch (Exception e)
{
WriteToEventLog(e.ToString());
return null;
}
}
lỗi nào là lỗi? – NikolaiDante
vui lòng cung cấp dấu vết ngăn xếp –
"Tham chiếu đối tượng không được đặt thành thể hiện của đối tượng" - có nghĩa là bạn đang tham chiếu NULL, hữu ích hơn khi biết dòng mã nơi điều này xảy ra, bởi vì bạn có thể thấy nó đó là NULL mà bạn đang tham chiếu. –