Estoy creando el sistema de inventario en ASP.NET MVC. Me encontré con el problema de encontrar el resultado cuando ingreso la identificación en el cuadro de texto, pero recibo un error en esta línea.
var std = dc.products.Where(a => a.id == Id).FirstOrDefault();
me sale un error:
Se produjo una excepción del tipo 'System.Data.Entity.Core.EntityException' en mscorlib.dll pero no se manejó en el código de usuario Información adicional: El proveedor subyacente falló en Open.
Lo que probé hasta ahora adjunto a continuación
Captura de pantalla que muestra nulo:
Índice.chtml
<table class="table table-bordered">
<caption> Add Products </caption>
<tr>
<th>Product Code</th>
<th>Product Name</th>
<th>Price</th>
<th>Qty</th>
<th>Amount</th>
<th>Option</th>
</tr>
<tr align="center">
<td>
<input type="text" class="form-control"
placeholder="barcode" id="barcode" name="barcode"
size="25px" required>
</td>
<td>
<input type="text" class="form-control" placeholder="barcode" id="pname" name="pname" size="50px" disabled>
@*<label id="pro_name" name="pname" id="pname"></label>*@
</td>
<td>
<input type="text" class="form-control pro_price" id="pro_price" size="25px" name="pro_price"
placeholder="price" disabled>
</td>
<td>
<input type="number" class="form-control pro_price" id="qty" name="qty"
placeholder="qty" min="1" value="1" size="10px" required>
</td>
<td>
<input type="text" class="form-control" placeholder="total_cost" size="35px" id="total_cost" name="total_cost" disabled>
</td>
<td>
<button class="btn btn-success" type="button" onclick="addproduct()">
Add
</button>
</td>
</tr>
</table>
HomeController
:
[HttpPost]
public JsonResult Getid(String Id)
{
// Get the student from studentList sample collection for demo purpose.
// Get the student from the database in the real application
var std = dc.products.Where(a => a.id == Id).FirstOrDefault();
// return new JsonResult { Data = new { std = std } };
return Json(std, JsonRequestBehavior.AllowGet);
}
Clase de modelo:
public partial class product
{
public string id { get; set; }
public string proname { get; set; }
public Nullable<int> cat_id { get; set; }
public Nullable<int> brand_id { get; set; }
public Nullable<int> qty { get; set; }
public Nullable<int> price { get; set; }
}
Cadena de conexión
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-WebApplication4-20220414085040.mdf;Initial Catalog=aspnet-WebApplication4-20220414085040;Integrated Security=True" providerName="System.Data.SqlClient" />
<add name="posEntities5" connectionString="Data Source=.;Initial Catalog=pos;User ID=sa;Password=***********;MultipleActiveResultSets=True;Application Name=EntityFramework" providerName="System.Data.EntityClient" />
</connectionStrings>
Captura de pantalla SQL
Solución del problema
La excepción que mencionó probablemente esté relacionada con la cadena de conexión. puede verificarlo con SQL Server Object Explorer de Visual Studio.
Vaya al menú Ver y luego elija Explorador de objetos de SQL Server
Luego, debajo del árbol de SQL Server, haga clic derecho en su base de datos y elija propiedades. y seleccione Cadena de conexión que probablemente le guste la siguiente cadena de conexión (probablemente mucho más larga):
Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=master;Integrated Security=True;
Luego, cambie el nombre Initial Catalog
de master
su base de datos y utilícelo como la cadena de conexión más simple dentro de su archivo de configuración y vea si se puede conectar o no.
Si se conecta, debe editar su archivo de configuración y la cadena de conexión para corregir el problema.System.Data.Entity.Core.EntityException
No hay comentarios:
Publicar un comentario