小编yaz*_*pro的帖子

C#构造函数使用私有/公共字段

class Student
{  
     private string firstName;

     public string FirstName
     {
        get
        {
            return firstName;
        }
        set
        {
            firstName = value; // Possible logical checks may be implemented here in the future
        }
     }

     public Student (firstName)
     {

         this.firstName = firstName; // Option 1
         // Or
         FirstName = firstName; // Option 2

     }
 }
Run Code Online (Sandbox Code Playgroud)

哪两条线更标准?

我们在构造函数中使用私有成员还是公共成员?

c#

3
推荐指数
2
解决办法
2202
查看次数

没有 Task<T> 方法的异步等待

根据MSDN中的以下示例:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

// Add a using directive and a reference for System.Net.Http; 
using System.Net.Http;

namespace AsyncFirstExample
{
    public partial class MainWindow : Window
    {
        // Mark the event handler with async so you can use await in it. 
        private async void StartButton_Click(object sender, RoutedEventArgs e)
        {
            // Call and await separately. 
            //Task<int> …
Run Code Online (Sandbox Code Playgroud)

.net c# asynchronous async-await

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

通过引用传递引用

如何通过引用传递引用对象是有用的.常规用法如下:

public static void main()
{
    Student st = new Student();
    st.FirstName = "Marc";
    PutLastName(st);
    Console.WriteLLine(st.FirstName + " " + st.LastName);
}

public static PutLastName(Student student)
{
    student.LastName = "Anthony";
}
Run Code Online (Sandbox Code Playgroud)

为什么有人会写下面的内容,它会做同样的事情并打印出来:"Marc Anthony":

public static void main()
{
    Student st = new Student();
    st.FirstName = "Marc";
    PutLastName(ref st);
    Console.WriteLLine(st.FirstName + " " + st.LastName);
}

public static PutLastName(ref Student student)
{
    student.LastName = "Anthony";
}
Run Code Online (Sandbox Code Playgroud)

c# parameter-passing pass-by-reference

2
推荐指数
1
解决办法
177
查看次数

创建新的空Word文档

我正在尝试使用OpenXML SDK 2.5创建一个空的Word文档(DOCX).以下代码对我不起作用,因为MainDocumentPart为null.

    public static void CreateEmptyDocxFile(string fileName, bool overrideExistingFile)
    {
        if (System.IO.File.Exists(fileName))
        {
            if (!overrideExistingFile)
                return;
            else
                System.IO.File.Delete(fileName);
        }

        using (WordprocessingDocument document = WordprocessingDocument.Create(fileName, WordprocessingDocumentType.Document))
        {
            const string docXml =
         @"<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?> 
            <w:document xmlns:w=""http://schemas.openxmlformats.org/wordprocessingml/2006/main"">
                <w:body>
                    <w:p>
                        <w:r>
                            <w:t></w:t>
                        </w:r>
                    </w:p>
                </w:body>
            </w:document>";

            using (Stream stream = document.MainDocumentPart.GetStream())
            {
                byte[] buf = (new UTF8Encoding()).GetBytes(docXml);
                stream.Write(buf, 0, buf.Length);
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

c# openxml openxml-sdk

2
推荐指数
1
解决办法
4351
查看次数

HTML5视频强制重新加载/防止缓存

HTML5视频标签中,如何根据需要/加载强制流式传输HTML5视频块并防止它们在客户端缓存?简单来说,如何阻止浏览器缓存HTML5视频?

我的最终目标是在短时间内(例如10分钟)使视频源可用,然后我将使源无效/到期.我知道如何使ASP.NET中的视频HTTP URL无效,或者如果视频托管在Amazon S3存储上,是否这样.但是,如果浏览器缓存了我的视频,它将独立显示,并且不再从服务器请求视频.

我已经签出有关使用HTML5视频的工作,没有多少运气详细的文章.

javascript asp.net html5 html5-video

2
推荐指数
1
解决办法
5733
查看次数

FFmpeg 在文本文件中传递参数

我试图绕过 Windows 中命令行长度的 32767 个字符限制(有时会小于该限制)。我有很多盒子,我想在视频上绘制它们。通常,我可以使用逗号 ( ,) 连接绘制命令,如下所示(以下命令绘制两个框):

ffmpeg -i input.mp4 -vf "drawbox=enable='between(t, 1.5, 4)' : x=100 : y=100 : w=200 : h=200 : color=green,drawbox=enable='between(t, 9, 18)' : x=500 : y=10 : w=150 : h=150 : color=red" -codec:a copy output.mp4
Run Code Online (Sandbox Code Playgroud)

然而,由于我有很多框要绘制,整个命令的长度变得太大。

FFmpeg 是否提供了一种在文本文件中传递所有参数而不是文字文本的方法?像这样的东西:

ffmpeg content(ffmpegCmd.txt)
Run Code Online (Sandbox Code Playgroud)

如果这是不可能的,是否可以将参数“缓冲”到单独的命令中,同时仅在最后一个命令中导出结果?

ffmpeg

2
推荐指数
1
解决办法
4158
查看次数