它很简单:对于这个结果,我没有模型/视图模型。我不想要它。我只想调用我的存储过程并创建一个动态类型。就像这样:
dynamic ceps = (from cep in context.Database.SqlQuery<dynamic>("spLogradouro @pCEP, @pUF, @pLOCALIDADE, @pTIPOLOGRADOURO, @pLOGRADOURO", new SqlParameter("pCEP", filter), new SqlParameter("pUF", ""), new SqlParameter("pLOCALIDADE", ""), new SqlParameter("pTIPOLOGRADOURO", ""), new SqlParameter("pLOGRADOURO", ""))
select new
{
property_one = name_of_my_column_of_this_stored_procedure_return
}).Single();不会那么难的。
编辑
在我所寻找的东西中,但要实现我的目标:
CepContext context = new CepContext();
JsonResult result = Json(new { Street = "", District = "", City = "", UF = "" });
using (var cmd = context.Database.Connection.CreateCommand())
{
cmd.CommandText = "spLogradouro @pCEP, @pUF, @pLOCALIDADE, @pTIPOLOGRADOURO, @pLOGRADOURO";
cmd.Parameters.Add(new SqlParameter("pCEP", filter));
cmd.Parameters.Add(new SqlParameter("pUF", ""));
cmd.Parameters.Add(new SqlParameter("pLOCALIDADE", ""));
cmd.Parameters.Add(new SqlParameter("pTIPOLOGRADOURO", ""));
cmd.Parameters.Add(new SqlParameter("pLOGRADOURO", ""));
cmd.Connection.Open();
var reader = cmd.ExecuteReader();
if (reader.HasRows)
{
reader.Read();
result = Json(new
{
Street = reader.GetString(reader.GetOrdinal("log_logradouro")),
District = reader.GetString(reader.GetOrdinal("log_bairro")),
City = reader.GetString(reader.GetOrdinal("log_localidade")),
UF = reader.GetString(reader.GetOrdinal("log_uf"))
});
}
cmd.Connection.Close();
}发布于 2013-05-02 14:52:03
不是我想要的,而是实现我的目标:
CepContext context = new CepContext();
JsonResult result = Json(new { Street = "", District = "", City = "", UF = "" });
using (var cmd = context.Database.Connection.CreateCommand())
{
cmd.CommandText = "spLogradouro @pCEP, @pUF, @pLOCALIDADE, @pTIPOLOGRADOURO, @pLOGRADOURO";
cmd.Parameters.Add(new SqlParameter("pCEP", filter));
cmd.Parameters.Add(new SqlParameter("pUF", ""));
cmd.Parameters.Add(new SqlParameter("pLOCALIDADE", ""));
cmd.Parameters.Add(new SqlParameter("pTIPOLOGRADOURO", ""));
cmd.Parameters.Add(new SqlParameter("pLOGRADOURO", ""));
cmd.Connection.Open();
var reader = cmd.ExecuteReader();
if (reader.HasRows)
{
reader.Read();
result = Json(new
{
Street = reader.GetString(reader.GetOrdinal("log_logradouro")),
District = reader.GetString(reader.GetOrdinal("log_bairro")),
City = reader.GetString(reader.GetOrdinal("log_localidade")),
UF = reader.GetString(reader.GetOrdinal("log_uf"))
});
}
cmd.Connection.Close();
}发布于 2013-04-30 16:26:28
您可以通过C#执行SQL,并将结果集读入动态对象。
https://stackoverflow.com/questions/16301278
复制相似问题