i m doing Crud operation using ADO.NET in visual studio 2015
Server Error in '/' Application.
Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.
Source Error:
Line 14: public string GetConnString()
Line 15: {
Line 16: string str = ConfigurationManager.ConnectionStrings["conn1"].ConnectionString;
Line 17:
Line 18:
Source File: F:\MVCASP.NET\ASPDotNETMVCClass\CurdOperation\Models\DataContext.cs Line: 16
Stack Trace:
[NullReferenceException: Object reference not set to an instance of an object.]
CurdOperation.Models.DataContext.GetConnString() in F:\MVCASP.NET\ASPDotNETMVCClass\CurdOperation\Models\DataContext.cs:16
CurdOperation.Models.DataContext.GetDepts() in F:\MVCASP.NET\ASPDotNETMVCClass\CurdOperation\Models\DataContext.cs:23
CurdOperation.Controllers.HomeController.Index() in F:\MVCASP.NET\ASPDotNETMVCClass\CurdOperation\Controllers\HomeController.cs:15
lambda_method(Closure , ControllerBase , Object[] ) +62
System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) +14
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) +157
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +27
System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState) +22
System.Web.Mvc.Async.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult) +29
System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) +32
System.Web.Mvc.Async.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3d() +50
System.Web.Mvc.Async.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() +225
System.Web.Mvc.Async.<>c__DisplayClass33.<BeginInvokeActionMethodWithFilters>b__32(IAsyncResult asyncResult) +10
System.Web.Mvc.Async.WrappedAsyncResult`1.CallEndDelegate(IAsyncResult asyncResult) +10
System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult) +34
System.Web.Mvc.Async.<>c__DisplayClass2b.<BeginInvokeAction>b__1c() +26
System.Web.Mvc.Async.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult) +100
System.Web.Mvc.Async.WrappedAsyncResult`1.CallEndDelegate(IAsyncResult asyncResult) +10
System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult) +27
System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) +13
System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29
System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +36
System.Web.Mvc.Controller.<BeginExecute>b__15(IAsyncResult asyncResult, Controller controller) +12
System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +22
System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) +26
System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) +10
System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__5(IAsyncResult asyncResult, ProcessRequestState innerState) +21
System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +29
System.Web.Mvc.Async.WrappedAsyncResultBase`1.End() +49
System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) +28
System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) +9
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +9734909
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.6.1532.0
What I have tried:
Step-1
i have taken one empty MVC application by naming As CRUDOperation...
then i have taken 2 classes in Model as Following..
1-Dept.cs
2-DataContext.cs
Detpt.cs i m using for property like as -Deptno,Dname,Loc,
Setp 2
i have created one Database naming As MyMvcdb..and inside this Database i have created one table name same as Model/class Dept and same coloum name.
step 3
In DataContext.cs Class i have written This Code as below...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
namespace CurdOperation.Models
{
public class DataContext
{
public string GetConnString()
{
string str = ConfigurationManager.ConnectionStrings["conn1"].ConnectionString;
return str;
}
public List<Dept> GetDepts()
{
string connStr = GetConnString();
string cmdText = "SELECT * FROM DEPT";
SqlDataAdapter da = new
SqlDataAdapter(cmdText, connStr);
DataSet ds = new DataSet();
da.Fill(ds);
List<Dept> deptList = new List<Dept>();
foreach (DataRow item in ds.Tables[0].Rows)
{
Dept obj = new Dept();
obj.Deptno = (int)item[0];
obj.Dname = (string)item[1];
obj.Loc = (string)item[2];
deptList.Add(obj);
}
return deptList;
}
public Dept GetDept(int dno)
{
string connStr = GetConnString();
string cmdText = "SELECT * FROM Dept WHERE Deptno = " + dno;
SqlConnection conn = new SqlConnection(connStr);
SqlCommand cmd = new SqlCommand(cmdText, conn);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
Dept obj = new Dept();
if (dr.Read() == true)
{
obj.Deptno = (int)dr["Deptno"];
obj.Dname = (string)dr["Dname"];
obj.Loc = (string)dr["Loc"];
}
conn.Close();
return obj;
}
public void ExecuteCommand(string cmdText)
{
string connStr = GetConnString();
SqlConnection conn = new SqlConnection(connStr);
SqlCommand cmd = new SqlCommand(cmdText, conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
public void AddDept(Dept obj)
{
string str = string.Format("INSERT INTO Dept VALUES({0}, '{1}','{2}')", obj.Deptno, obj.Dname, obj.Loc);
ExecuteCommand(str);
}
public void EditDept(Dept obj)
{
string str = string.Format("UPDATE Dept SET Dname = '{0}', Loc = '{1}' WHERE Deptno ={ 2} ", obj.Dname, obj.Loc, obj.Deptno);
ExecuteCommand(str);
}
public void DeleteDept(int dno)
{
string str = "DELETE FROM Dept WHERE deptno = "+ dno;
ExecuteCommand(str);
}
}
}