【发布时间】:2014-05-04 10:03:49
【问题描述】:
我开始使用 MVC ASP.NET,但我被困在 2 点上。
如何在文件夹中搜索文件。例如,如果在文件夹中插入一个文件,则系统将选择该文件并在列表中添加显示。 (仅新插入的文件)。
我应该在哪里添加此代码。模型或控件(我猜不在视图中)。
请帮忙解决这个问题。
【问题讨论】:
-
给我负分后的任何指导
标签: asp.net-mvc asp.net-mvc-3 directory
我开始使用 MVC ASP.NET,但我被困在 2 点上。
如何在文件夹中搜索文件。例如,如果在文件夹中插入一个文件,则系统将选择该文件并在列表中添加显示。 (仅新插入的文件)。
我应该在哪里添加此代码。模型或控件(我猜不在视图中)。
请帮忙解决这个问题。
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 directory
您将在控制器中编写代码。你得到了负分,因为你没有自己做任何事情。
干杯
【讨论】:
您可以在视图或控制器中搜索文件。下面我将解释如何使用 AJAX 在控制器中进行操作。
将此添加到您的视图中:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script>
function Check() {
$.ajax({
type: "POST",
url: '@Url.Action("SearchFile")',
data: '{fileName: ' + $('#input1').val() + '}',
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (result) {
$("#result").val(result);
},
error: function (jqXHR, textStatus, errorThrown) {
alert(jqXHR.status + " " + jqXHR.statusText);
}
});
}
</script>
<div>
<input id="input1">
<button id="btnCheck" onclick="Check()"> Check </button>
<span id="result"></span>
</div>
我必须添加一个控制器来从 AJAX 获取文件名并进行搜索。
[HttpPost]
public ActionResult SearchFile(string fileName)
{
if (!Request.IsAjaxRequest())
return Json(false);
var relativePath = "~/YourFolder/" + fileName;
var absolutePath = HttpContext.Server.MapPath(relativePath);
return Json(System.IO.File.Exists(absolutePath));
}
【讨论】: