0
이 linq 쿼리를 수행하려고하지만 "EmpCritGID를 초기화 할 수 없으므로 공유 중"오류가 발생합니다. datatable을 쿼리하고 vb.net 코드에서 사용하기 위해 공유 속성이있는 기존 클래스의 값을 채우는 올바른 방법은 무엇입니까?Linq, 데이터 가능 및 공유 속성
If CriteriaFlags.CritOrgFlag AndAlso lblOrgName.Text.Equals(String.Empty) Then lblOrgName.Text = "Need Org Assigned" lblOrgName.ForeColor = redColor lblOrgName.BackColor = yellowColor End If Dim result = From c In EmployeeJobCriteria.AsEnumerable() Where c.Field(Of Integer)("EmpCritGID").Equals(intEmpCritGID) Select New EmployeeCriteria.CriteriaFlags _ With {.EmpCritGID = c.Field(Of Integer)("EmpCritGID"), _ .EmpJobFID = c.Field(Of Integer)("EmpJobFID"), _ .CritFID = c.Field(Of Integer)("CritFID"), _ .NodeGID = c.Field(Of Integer)("NodeGID"), _ .CritOrgFlag = c.Field(Of Boolean)("CritOrgFlag"), _ .CritWeightFlag = c.Field(Of Boolean)("CritWeightFlag"), _ .CritOppFlag = c.Field(Of Boolean)("CritOppFlag"), _ .CritActFlag = c.Field(Of Boolean)("CritActFlag")} Namespace Objective Public Class EmployeeCriteria Public Class CriteriaFlags Public Shared EmpCritGID As Integer Public Shared EmpJobFID As Integer Public Shared CritFID As Integer Public Shared NodeGID As Integer Public Shared CritOrgFlag As Boolean Public Shared ShareCritPmtFlag As Boolean Public Shared CritWeightFlag As Boolean Public Shared CritOppFlag As Boolean Public Shared CritActFlag As Boolean End Class End Class End Namespace
그래서, 난 당신이 내가 필요로하는 row_databound 함수에서 클래스를 초기화하는 것이 겠지? – webapparchitect
또한, 초기화 된 변수를 사용하여 새로운 EmployeeCriteria.CriteriaFlags로 objEmpCritFlag을 말하고 LINQ 내부에서 objEmpCritFlag를 사용합니까? – webapparchitect
나는 당신이 그것을 어디에서 필요로하는지 전혀 모른다. 그것은 전혀 중요하지 않다. linq 쿼리 (이미있는 위치)의 선택 항목에 초기화를 추가해야합니다. 쿼리를 실행하면'CriteriaFlags' 오브젝트가 생성되고 초기화됩니다. 변수를 사용하는 곳은 컨텍스트에 따라 다릅니다. Linq 질의를 연결하거나, ToList 또는 ToArray를 어딘가에 호출하거나, For Each를 사용하거나, 뭔가를 DataSource로 사용할 수 있습니다. 그러나 그것은이 질문의 범위를 벗어납니다. 도움이된다면/upvote 대답을 수락하는 것을 잊지 마십시오. http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work –