2016-12-01 28 views
0
using System; 
using System.Threading.Tasks; 
using System.Data; 
using System.Data.Common; 
using System.Data.SqlClient; 
using System.DirectoryServices; 
using Microsoft.Practices.EnterpriseLibrary.Logging; 
using Microsoft.Practices.EnterpriseLibrary.Common; 
using Microsoft.Practices.EnterpriseLibrary.Common.Configuration; 
using Microsoft.Practices.EnterpriseLibrary.Data; 
using System.Diagnostics; 
using System.Configuration; 

namespace DB_Logger_1 
{ 

/*This method for Logging to DB*/ 
public class DBLogger 
{ 
private Database dbClient = null; 
SqlConnection conn = new SqlConnection(); 
public void Log(string UserName, int EventID, string Message, TraceEventType Severity, int Priority) 
{ 
conn.ConnectionString = @"Data Source=D-DG2H6BS\MSSQLSERVER2014;Initial Catalog=DummyDB1;User ID=sa;Password=***********;"; 
conn.Open(); 
using (DbCommand cmdInsertLog = dbClient.GetStoredProcCommand("LogToDatabase")) 
{ 
try 
{ 
dbClient.AddInParameter(cmdInsertLog, "UserName", DbType.String, UserName); 
dbClient.AddInParameter(cmdInsertLog, "EventID", DbType.Int32, EventID); 
dbClient.AddInParameter(cmdInsertLog, "Message", DbType.String, Message); 
dbClient.AddInParameter(cmdInsertLog, "TraceEventType", DbType.String, Severity); 
dbClient.AddInParameter(cmdInsertLog, "Priority", DbType.String, Priority); 
dbClient.ExecuteNonQuery(cmdInsertLog); 
} 
catch (Exception ex) 
{ 
throw ex; 
} 
finally 
{ 
if (cmdInsertLog.Connection.State == ConnectionState.Open) 
{ 
cmdInsertLog.Connection.Close(); 
} 
cmdInsertLog.Dispose(); 
} 
} 
} 
} 
public class EventLogger 
{ 
public void Log(string UserName, int EventID, string Message, TraceEventType Severity, int Priority) 
{ 
LogEntry logEntry = new LogEntry(); 
logEntry.Title = Message; 
logEntry.EventId = EventID; 
logEntry.Message = Message; 
logEntry.TimeStamp = DateTime.Now; 
} 
} 
} 

這裏有什麼錯誤......這段代碼是否可以將事件記錄到數據庫和事件查看器中?提供解決方案。這個logtoDB部分可能包含錯誤。我還沒有檢查它。糾正錯誤,如果有的話,並張貼我相同或建議我的解決方案與此代碼只。事件記錄到數據庫和事件查看器

+0

你應該說明你得到了什麼錯誤信息。這不是一項測試服務。 – Daz

+0

「程序不包含適用於入口點的靜態主要方法」是錯誤消息。此解決方案是否有效? – Naveenkumar

+0

該錯誤消息意味着Visual Studio不知道如何開始運行代碼。例如,如果你正在創建一個命令行程序,你會提供一個Main()函數作爲入口點。這與上面的代碼無關。 – Daz

回答

相關問題