小编sal*_*lar的帖子

使用jQuery Ajax,HttpPostedfileBase为null

我在Asp.net Mvc上传文件时遇到问题.首先,我应该使用Ajax传递上传文件值.

在javascript我有我填充的模型,当我用调试器检查它是否正确填充对象,但当我将此模型发送到服务器(控制器)

httpPostedfileBase值始终为null.

我在谷歌搜索它,在一些帖子中我看到我不能使用文件上传器与Ajax,但在其他我看到我可以.

但我无法修复我的代码.

有我的Javascript代码.

$(document).ready(function () {

$('#btnUploadFile').on('click', function () {
   var data= new FormData();

    debugger;
    var files = $("#fileUpload").get(0).files;

    if (files.length > 0) {
        data.append("UploadedImage", files[0]);
    }
    var ResturantSharingViewModel =
   {
       Type: $("#SharingTargetType").val(),
       SharingTitle: $("#SharingTitle").val(),
       content: $("#Content").val(),
       ItemId : $("#ItemId").val(),
       Photos: files[0]
   };
    $.ajax({
        type: 'POST',
        dataType: 'json',
        contentType: 'application/json',
        url: '<%= Url.Action("SaveOneDatabase")%>',
        data: JSON.stringify(ResturantSharingViewModel),
          success: function (result) {
              var rs = result;
          },
          error: function () {
              alert("Error loading data! Please try again.");
          }
      }); …
Run Code Online (Sandbox Code Playgroud)

javascript asp.net-mvc

20
推荐指数
3
解决办法
3万
查看次数

在视图中填充模型并传递控制器

我在asp.net中遇到很多问题因为我是新手.所以我搜索,但我没有找到我的答案.

首先,我的视图引擎是aspx不是剃刀,这是我的主要问题.

这是视图

        <%= Html.HiddenFor(model => model.SharingPremiumHistoryID) %>
    <%= Html.HiddenFor(model => model.ItemId) %>
    <div class="group">
        <span> ????? ?? </span>
        <%= Html.DropDownListFor(model => model.SharingTargetType, Model.SharingTypes) %>
    </div>
</hgroup>
<div class="newseditor">
    <div class="input-form">
        <%= Html.LabelFor(model => model.SharingTitle, "????? ???") %>
        <%= Html.TextBoxFor(model => model.SharingTitle) %>
    </div>

    <div class="input-form">
        <%= Html.LabelFor(model => model.Content, "??? ???") %>
        <%= Html.TextAreaFor(model => model.Content) %>
    </div>
    <div><input id="fileUpload" type="file" />

    </div>
                   <button name="post" type="submit" >????? ???</button>
Run Code Online (Sandbox Code Playgroud)

因为你有一些填充模型的项目.

现在我的问题是如何通过提交按钮将此视图传递给控制器​​(带有Ajax).

这是控制器

  public virtual ActionResult Add()
    {
        var model = …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc

6
推荐指数
1
解决办法
499
查看次数

在SQL Server中循环执行月份

每年我们都有12个月.我应该编写一个查询,每个月在一个表中选择.例如,我应该制作报告,告诉我每个月的交易次数.

我做错了,但做错了.

我每个月都写了12个查询.

像这样 :

SET @MONTH12M = (SELECT SUM(Amount) AS TOT
                 FROM [fidilio].[dbo].[CardTransactionLog] CL
                 JOIN CardTransaction CT ON CT.CardTransactionLogId = CL.CardTransactionLogId
                 WHERE (cl.TransactionPersianTimeStamp > N'1393/12/01' 
                        AND cl.TransactionPersianTimeStamp< N'1393/12/31')
)

INSERT INTO #TEMP(MonthValue, CountValue, TypeValue) 
   SELECT 
       12,
       CASE WHEN @MONTH12M IS NULL THEN 0 ELSE  @MONTH12M END,4
Run Code Online (Sandbox Code Playgroud)

我有11个这样的查询.

最后我获取了我放入临时表的结果.

我怎么能动态地这样做?

我怎么能用循环呢?

t-sql sql-server

5
推荐指数
1
解决办法
750
查看次数

ajax回调后无法更改内部文本?

我在页面上有十个像按钮,我是通过页面上的foreach循环创建的.

我在使用jQuery更改内部文本时遇到问题.

让我用我的元素来解释

     <a class="pr-endorse" id="<%=product.ConfectionaryProductId %>">
        <i class="pr-add"></i>
        <span>+</span>
        <span class="pr-likes"><%=product.EndorsementCount %></span>
    </a>
Run Code Online (Sandbox Code Playgroud)

这是我喜欢的按钮元素之一.

这是提交用户的Ajax函数

      $(document).ready(function () {
        $(".pr-endorse").click(function () {
            debugger;
            var productId = $(this).attr("id");
            var confId = $("#ConfectioneryId").val();
            var countNumber = $(this).find(".pr-likes").html();
            $.ajax({
                url: '<%: Url.Action("Endorsement","Confectionery")%>',
                data: { productId: productId, itemId: confId },
                type: "POST",
                async: true,
                cache: false,
                success: function (result) {

                    debugger;
                    $(this).find(".pr-likes").text(result.endoresCount);
                    alert(result.endoresCount);

                },
                error: function (xhr) {
                    alert(xhr);
                }
Run Code Online (Sandbox Code Playgroud)

我认为这部分代码应该解决

  $(this).find(".pr-likes").text(result.endoresCount);
Run Code Online (Sandbox Code Playgroud)

但它不起作用?

ajax asp.net-mvc jquery

5
推荐指数
1
解决办法
691
查看次数

如何在asp.net mvc中使用DownloadProgressChangedEventHandler?

我有网站,我想用WebClient Class下载文件.

例如,我有网址,我想下载它.在控制台应用程序中,此方法和代码正常工作

这是控制台应用程序中的示例代码:

public void DownloadFile(string sourceUrl, string targetFolder)
    {
        WebClient downloader = new WebClient();
        downloader.Headers.Add("User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0)");
        downloader.DownloadFileCompleted += new AsyncCompletedEventHandler(Downloader_DownloadFileCompleted);
        downloader.DownloadProgressChanged +=
            new DownloadProgressChangedEventHandler(Downloader_DownloadProgressChanged);
        downloader.DownloadFileAsync(new Uri(sourceUrl.Replace(@"\","")), targetFolder);
        while (downloader.IsBusy) { }
    }

private void Downloader_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
    {
        //Console.Write(e.BytesReceived + " " + e.ProgressPercentage);  

        Console.Write("%" + e.ProgressPercentage);
    }
Run Code Online (Sandbox Code Playgroud)

此示例代码在控制台应用程序中正常工作

我如何在asp.net mvc应用程序中使用此示例代码.

对于asp.net mvc它应该喜欢这个(我认为)

      public ActionResult DownloadPage()
    {
        string url = "https://rjmediamusic.com/media/mp3/mp3-256/Mostafa-Yeganeh-Jadeh.mp3";
        var downld = new DownloadManager();
        downld.DownloadFile(url, @"c:\\temp\1.mp3");
        return View();
    }
Run Code Online (Sandbox Code Playgroud)

对我来说,事件处理程序方法(Downloader_DownloadProgressChanged)非常重要,因为我想在客户端创建进度条. …

c# asp.net-mvc webclient progress-bar

5
推荐指数
1
解决办法
192
查看次数

无法在 SignalR 中将类型“System.Threading.Tasks.Task&lt;object&gt;”隐式转换为“string”

我是 SignalR 的新手。

我的项目是在 signalR 和 sql 依赖项上提出 sql 更改。

这是使用C# 角的示例代码

一切都很好,但我通过这段代码得到了例外

在此处输入图片说明

         using (var connection = new SqlConnection("Server=.;Database=fidilio;Trusted_Connection=True;"))
        {
            const string query = "SELECT Count(*) FROM [dbo].[MemberComment]";

            connection.Open();
            using (var command = new SqlCommand(query, connection))
            {                  
                command.Notification = null;                
                var dt = new DataTable();
                var dependency = new SqlDependency(command);
                dependency.OnChange += dependency_OnChange;
                if (connection.State == ConnectionState.Closed)
                    connection.Open();                
                var reader = command.ExecuteScalar();

                commentCount = Int16.Parse((reader.ToString()));
            }  
        }
        var context = GlobalHost.ConnectionManager.GetHubContext<NotficationHub>();

        return context.Clients.All.RecevieNotification(commentCount);
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

c# signalr

3
推荐指数
1
解决办法
1万
查看次数