private SGMasterBaseEntities _db; // = new SGMasterBaseEntities(); public long?AddGroup(ViewGroup viewgroup, Guid userId) { Trace.Assert(_db != null); /* * ObjectResult<Int64> result = db.ExecuteFunction<Int64>("AddGroup", new ObjectParameter[] { * //new ObjectParameter("GroupID", viewgroup.ID), * new ObjectParameter("Name", viewgroup.Name), * new ObjectParameter("UserID", viewgroup.UserID), * new ObjectParameter("DeviceNamePrefix", viewgroup.DeviceNamePrefix), * new ObjectParameter("StartingIP1", viewgroup.StartingIP1), * new ObjectParameter("StartingIP2", viewgroup.StartingIP2), * new ObjectParameter("StartingIP3", viewgroup.StartingIP3), * new ObjectParameter("StartingIP4", viewgroup.StartingIP4), * new ObjectParameter("EndingIP1", viewgroup.EndingIP1), * new ObjectParameter("EndingIP2", viewgroup.EndingIP2), * new ObjectParameter("EndingIP3", viewgroup.EndingIP3), * new ObjectParameter("EndingIP4", viewgroup.EndingIP4), * new ObjectParameter("SecondaryStartingIP1", viewgroup.SecondaryStartingIP1), * new ObjectParameter("SecondaryStartingIP2", viewgroup.SecondaryStartingIP2), * new ObjectParameter("SecondaryStartingIP3", viewgroup.SecondaryStartingIP3), * new ObjectParameter("SecondaryStartingIP4", viewgroup.SecondaryStartingIP4), * new ObjectParameter("StartingIPPort", viewgroup.StartingIPPort), * new ObjectParameter("EndingIPPort", viewgroup.EndingIPPort), * new ObjectParameter("SecondaryStartingIPPort", viewgroup.SecondaryStartingIPPort), * new ObjectParameter("DeviceTypeID", viewgroup.DeviceTypeID) * }); */ ObjectResult <long?> result = _db.AddGroup(viewgroup.Name, viewgroup.DeviceNamePrefix, viewgroup.StartingIP1, viewgroup.StartingIP2, viewgroup.StartingIP3, viewgroup.StartingIP4, viewgroup.EndingIP1, viewgroup.EndingIP2, viewgroup.EndingIP3, viewgroup.EndingIP4, viewgroup.SecondaryStartingIP1, viewgroup.SecondaryStartingIP2, viewgroup.SecondaryStartingIP3, viewgroup.SecondaryStartingIP4, viewgroup.StartingIPPort, viewgroup.EndingIPPort, viewgroup.SecondaryStartingIPPort, viewgroup.DeviceTypeID, userId); Trace.Assert(result != null); IEnumerator <long?> resultList = result.GetEnumerator(); Trace.Assert(resultList != null); resultList.MoveNext(); long?groupId = resultList.Current; resultList.Dispose(); // for transaction to be able to complete return(groupId); }