public AssignedIssues2(IssueTracker data)
            : this()
        {
            _dataSet = data.DataSet;

            _bigView =
                from i in _dataSet.Issues.AsLive()
                join p in _dataSet.Products.AsLive() on i.ProductID equals p.ProductID
                join f in _dataSet.Features.AsLive() on new { i.ProductID, i.FeatureID } equals new { f.ProductID, f.FeatureID }
            join e in _dataSet.Employees.AsLive() on i.AssignedTo equals e.EmployeeID
                 select new Issue
            {
                IssueID        = i.IssueID,
                ProductName    = p.ProductName,
                FeatureName    = f.FeatureName,
                Description    = i.Description,
                AssignedToID   = e.EmployeeID,
                AssignedToName = e.FullName
            };

            _bigView.Indexes.Add(x => x.AssignedToID);

            _issueCounts =
                from i in _dataSet.Issues.AsLive()
                join e in _dataSet.Employees.AsLive() on i.AssignedTo equals e.EmployeeID
                group e by e.FullName into g
                select new EmployeeIssueCount
            {
                EmployeeName = g.Key,
                IssueCount   = g.Count()
            };
        }
 public IssueTracker()
 {
     DataSet             = new IssueTracking();
     DataSet.DataSetName = "IssueTracking";
     XmlDocument         = new XDocument();
     using (var xmlStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("LiveLinqIssueTrackerDataSet.Data.IssueTracking.xml"))
     {
         Debug.Assert(xmlStream != null);
         XmlReaderSettings settings = new XmlReaderSettings {
             IgnoreWhitespace = true
         };
         XmlReader reader = XmlReader.Create(xmlStream, settings);
         XElement  data   = XElement.Load(reader);
         XmlDocument.ReplaceNodes(data);
         DataSet.ReadXml(XmlDocument.CreateReader());
     }
 }
        public BatchProcessing(IssueTracker data)
            : this()
        {
            _dataSet = data.DataSet;

            View <IssueTracking.IssuesRow> issues = _dataSet.Issues.AsLive();

            _issuesToAssign =
                from i in issues
                where i.AssignedTo == 0
                join a in _dataSet.Assignments.AsLive() on new { i.ProductID, i.FeatureID } equals new { a.ProductID, a.FeatureID }
            join i1 in issues
                 on new { i.ProductID, i.FeatureID, a.EmployeeID } equals new { i1.ProductID, i1.FeatureID, EmployeeID = i1.AssignedTo } into g
            where g.Count() == 0
            join e in _dataSet.Employees.AsLive() on a.EmployeeID equals e.EmployeeID
                 select new IssueAssignment {
                IssueID = i.IssueID, EmployeeID = a.EmployeeID, EmployeeName = e.FullName
            };
        }
Esempio n. 4
0
 public ReassignIssue(IssueTracker data)
     : this()
 {
     _dataSet = data.DataSet;
 }
 public AddIssue(IssueTracker data) : this()
 {
     _dataSet = data.DataSet;
 }
 public ReassignFeatures(IssueTracker data)
     : this()
 {
     _dataSet = data.DataSet;
 }
Esempio n. 7
0
 public EmployeesIssues(IssueTracker data)
     : this()
 {
     _dataSet = data.DataSet;
 }
Esempio n. 8
0
 public AssignedIssues(IssueTracker data)
     : this()
 {
     _dataSet = data.DataSet;
 }