【发布时间】:2021-02-10 09:55:36
【问题描述】:
我正在尝试制作一个更短的 url mvc 程序,一切都很好,但是重定向方法不起作用。
相信我:
- 数据库没问题
- 字符串 final 正在获取值 (http://www.youtube.com)
我不知道为什么我得到空白页作为返回
public IActionResult Redirection(string url_return)
{
string final = null;
SqlConnection conn = new SqlConnection("Server=DESKTOP-28DDBR5\\SQLEXPRESS;Database=MakeItSmall;User Id=renan;Password=24025564;");
conn.Open();
SqlCommand cmd = new SqlCommand("SELECT [BIG_URL] FROM [dbo].[URL_STORE] WHERE [SMALL_URL] = @URL_RETURN", conn);
SqlParameter param = new SqlParameter();
param.ParameterName = "@URL_RETURN";
param.Value = url_return;
cmd.Parameters.Add(param);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
final = (String.Format("{0}", reader[0]));
}
reader.Close();
conn.Close();
return Redirect(final);
}
}
路线:
app.UseEndpoints(endpoints =>
{
endpoints.MapGet("/{url_return}", (async context =>
{
string url_return = (string)context.Request.RouteValues["url_return"];
RedirectionController rc = new RedirectionController();
rc.Redirection(url_return);
}));
});
【问题讨论】:
-
您正在调用
rc.Redirection(url_return),但您正在丢弃IActionResult。你为什么不直接点击你的控制器呢?
标签: c# asp.net-core url redirect asp.net-core-mvc