este es mi códigoEl texto y los tipos de datos nvarchar son incompatibles en el operador igual a
ProductController.cs
public ActionResult Details(string id)
{
product productx = productDB.products.Single(pr => pr.Product1 == id);
return View(productx);
}
Details.aspx
<td>
<%-- : Html.ActionLink("Edit", "Edit", new { id=item.Id }) % -->
<%: Html.ActionLink("Details", "Details", new { id = item.Product1 })%>
</td>
esto es Lo que estoy usando para enumerar algunos productos de una base de datos sql, cada producto tiene un enlace a una página de Detalles para mostrar más inf ormations al respecto
lo que estoy tratando es sólo poner la etiqueta del producto en el que enlazan con deje que se muestran algo así como www.mysite.com \ productos \ batería (no el id)
he imaginado esto debería funcionar, pero lanza un Los tipos de datos text y nvarchar son incompatibles en el operador equal. error y ni (pr => pr.Product1.Equals(id));
funciona
el error es claro y me pregunto cómo debo hacer para que funcione de esta manera?
gracias
¡Gracias! Funciona estableciéndolo en varchar (max), otra pequeña pregunta: ¿qué hay de la forma en que devuelvo el productx, es una buena práctica? – Hassen
@metro: la forma en que devuelve el 'Producto' está bien. Pero si hablamos de las mejores prácticas, * realmente * debería considerar el uso de un tipo de datos diferente para la ID; te encontrarás con * major * problemas de rendimiento con tipos de caracteres grandes. – Aaronaught