Windows 응용 프로그램을 만들고 있습니다.var을 다른 메소드의 매개 변수로 전달하는 방법은 무엇입니까?
처음에는 var을 선언했으며 다른 클래스 메서드가 포함되어 있습니다.
var ExtList = ExtTarget.GetExtTargets();
그리고 GetExtTargets은() 그런 다음이
public static List<ExtTarget> GetExtTargets()
{
var dt = SqlHelper.ExecuteDataTable(QueryHelper.ConnectionString,
@"
SELECT [seq],[SourceKind],[ExtKind],[DBKind],[ConnectionString]
,[FilePath],[TableName],[FileKind],[RowSplitter],[ColumnSplitter]
,[Title],[GroupName],[SyncOrder],[RepeatKind],[RepeatMonth]
,[RepeatDay],[RepeatHour],[RepeatMin],[RepeatWeek],[RepeatWeekNum]
,[LastSyncExecDate]
FROM [ExtTarget]
order by GroupName,SyncOrder");
return dt.Rows.Cast<DataRow>().Select<DataRow, ExtTarget>(a => ExtTarget.RowToModel(a)).ToList();
}
처럼, 나는 foreach는 그것을 사용하고 나는 다른 방법의 매개 변수에 내선을 전달하려는.
코드는 다음과 같습니다.
public void ProcessExtSync(object obj)
{
while (IsProcessGoing)
{
Thread.Sleep(ThreadDelay);
if (!IsProcessGoing) return;
var ExtList = ExtTarget.GetExtTargets();
foreach (var Ext in ExtList) // I want to use this Ext as parameter
{
while (IsSourceSyncGoing)
{
Thread.Sleep(ThreadDelay);
}
IsExtSyncGoing = true;
bool ExtSyncForceToRun = ConfigSettingHelper.Instance.IsServiceConfig(Words.ExtSyncForceToRun);
bool ExtSyncForceToRunOnlyError = ConfigSettingHelper.Instance.IsServiceConfig(Words.ExtSyncForceToRunOnlyError);
bool ExtSyncNeedToRun = ConfigSettingHelper.Instance.GetNextExecutingTime(Ext) < DateTime.Now;
if (ExtSyncForceToRun || ExtSyncNeedToRun)
{
//I want to pass Ext as parameter to this method
ServiceProcess.Instance.SyncExt();
if (ExtSyncForceToRun)
{
ConfigSettingHelper.Instance.SetServiceConfig(Words.ExtSyncForceToRun, false);
}
if (ExtSyncForceToRunOnlyError)
{
ConfigSettingHelper.Instance.SetServiceConfig(Words.ExtSyncForceToRunOnlyError, false);
}
}
if (!IsProcessGoing) return;
}
IsExtSyncGoing = false;
}
}
어떻게 코드를 수정할 수 있습니까? 도와주세요.
그냥 통과 그것. 다른 변수와 마찬가지로 변수입니다. 나는 그 문제가 무엇인지 이해하지 못한다. 오류가 있습니까? – dman2306
'ProcessExtSync'에 대한 인수를 정의한 것과 같습니다. 메서드에 인수를 전달하는 방법을 모르는 경우에는 자습서를 실행하거나 먼저 C#을 가져와야합니다. – Rob
@ Rufus의 답변 외에도'Get'tTargets()이 반환하는 타입을 독자에게 알려주지 않기 때문에'var'을 사용하지 말라고 말할 것입니다. 분명한 경우'var'을 사용할 수 있습니다. 'var op = "ryden"'. – niksofteng