public NodeModel Get(SearchNodeModel searchNodeModel) { NodeModel nodeModel = new NodeModel(); try { this._sqlDBManager.OpenConnection(); using (SqlCommand cmd = new SqlCommand(string.Format("SELECT * FROM Nodes Where Type = '{0}' And ParentNodeId = '{1}'", searchNodeModel.Type, searchNodeModel.ParentNodeId), this._sqlDBManager.SqlConnection)) { using (SqlDataReader dataReader = cmd.ExecuteReader()) { while (dataReader.Read()) { nodeModel.Id = Convert.ToInt32(dataReader["Id"]); nodeModel.Feature = dataReader["Feature"].ToString(); nodeModel.Animal = dataReader["Animal"].ToString(); nodeModel.Type = Convert.ToBoolean(dataReader["Type"]); nodeModel.ParentNodeId = Convert.ToInt32(dataReader["ParentNodeId"]); } } } } catch (SqlException sqlException) { //log err } finally { this._sqlDBManager.CloseConnection(); } return(nodeModel); }
/// <summary> /// Gets node by type and parent node ID /// </summary> /// <param name="searchNodeModel">Type and parent node ID</param> /// <returns>Founded node or blank node</returns> public NodeModel Get(SearchNodeModel searchNodeModel) { NodeModel nodeModel = new NodeModel(); try { this._sqlDBManager.OpenConnection(); using (SqlCommand cmd = new SqlCommand("SELECT * FROM Nodes Where Type = @Type And ParentNodeId = @ParentNodeId", this._sqlDBManager.SqlConnection)) { cmd.Parameters.Add("@Type", SqlDbType.Bit).Value = searchNodeModel.Type; cmd.Parameters.Add("@ParentNodeId", SqlDbType.Int).Value = searchNodeModel.ParentNodeId; using (SqlDataReader dataReader = cmd.ExecuteReader()) { while (dataReader.Read()) { nodeModel.Id = Convert.ToInt32(dataReader["Id"]); nodeModel.Feature = dataReader["Feature"].ToString(); nodeModel.Animal = dataReader["Animal"].ToString(); nodeModel.Type = Convert.ToBoolean(dataReader["Type"]); nodeModel.ParentNodeId = Convert.ToInt32(dataReader["ParentNodeId"]); } } } } catch (SqlException sqlException) { //TODO: implement error handling //log err } finally { this._sqlDBManager.CloseConnection(); } return(nodeModel); }
public IHttpActionResult Get([FromUri] SearchNodeModel search) { var node = this._nodeRepository.Get(search); return(Ok(node)); }