Tag: .net

如果文件夹包含空格,如何处理文件路径中的空格?

public static void launchProcess(string processName, string arguments, out string output) { Process p = new Process { StartInfo = { UseShellExecute = false, RedirectStandardOutput = true, FileName = processName, Arguments = arguments } }; p.Start(); output = p.StandardOutput.ReadToEnd(); p.WaitForExit(); } 如果我的参数包含文件名,例如: D:\Visual Studio Projects\ProjectOnTFS\ProjectOnTFS 然后我得到错误:

如何获取LinkedList 中的第n个元素?

如何获取LinkedList实例的第n个元素? 是否有内置方式或我可能需要介绍我自己的实现? 例如扩展方法? 谢谢

没有配置身份validation处理程序来validation该方案:Microsoft.AspNet.Identity.External

我正在使用asp.net 5 rc2构建一个api。 我正在尝试实现openiddict-core,在这里找到本地帐户,我也想让用户使用外部登录,例如谷歌。 我已经设置了所有,但当我尝试实现谷歌身份validation,我称之为代码 var info = await _signInManager.GetExternalLoginInfoAsync(); 我在标题中收到错误消息。 在客户端我正在使用这里找到的Satellizer,它负责打开google提示窗口并将回调发送到我的AuthController Google方法,这是您在其他mvc6示例中看到的正常ChallengeResult代码。 我已经编写了代码来手动获取用户的详细信息,但是我认为我会使用已经构建的signInManager,而不是重现轮… 我可能没有正确设置,因为所有示例似乎都使用cookie,我猜测是因为它们是mvc6 Web应用程序,而不是api。 我不想使用cookies,但这可能是我的问题。 现在为一些代码。 startup.cs public void ConfigureServices(IServiceCollection services) { // Add MVC services to the services container. services.AddMvc(); services.AddEntityFramework() .AddSqlServer() .AddDbContext(options => options.UseSqlServer(_configuration[“Data:DefaultConnection:ConnectionString”])); services.AddIdentity() .AddEntityFrameworkStores() .AddDefaultTokenProviders() .AddOpenIddict(); // Add the OpenIddict services after registering the Identity services. } public void […]

如何在C#.NET(SQL Server)中正确有效地重用预准备语句?

我看了很多问题,但显然我的SO-fu不能胜任这个任务,所以我在这里。 我正在尝试有效地使用预准备语句,我不仅仅意味着参数化单个语句,而是编译一个语句以便重复使用多次。 我的问题在于参数和重用以及如何正确实现。 一般来说,我遵循这个程序(人为的例子): SqlConnection db = new SqlConnection(…); SqlCommand s = new SqlCommand(“select * from foo where a=@a”, db); s.Parameters.Add(“@a”, SqlDbType.VarChar, 8); s.Prepare(); … s.Parameters[“@a”] = “bozo”; s.Execute(); 超级,有效。 但是,每次运行此查询时,我都不想执行所有这些步骤(或后四个步骤)。 这似乎抵消了准备陈述的整个想法。 在我看来,我只需要更改参数并重新执行,但问题是如何做到这一点? 我尝试了s.Parameters.Clear() ,但这实际上删除了参数本身,而不仅仅是值,所以我基本上需要重新Add参数并重新Prepare ,这似乎也打破了整点。 不用了,谢谢。 在这一点上,我留下了迭代s.Parameters并将它们全部设置为null或其他值。 它是否正确? 不幸的是,在我目前的项目中,我有~15个参数的查询需要执行〜每次运行10,000次。 我可以将这个迭代分流成一个方法但是想知道是否有更好的方法来做到这一点(没有存储过程)。 我目前的解决方法是一个扩展方法, SqlParameterCollection.Nullify ,它将所有参数设置为null,这对我的情况很好。 我只是在执行后运行它。 我发现了一些几乎完全相同但(恕我直言)尚未解答的问题: 准备语句和.NET中的内置连接池 SQLite / C#连接池和准备语句混淆 (Serge非常接近回答!) 我能找到的最佳答案是(1)上面的常识和(2)这个页面: http://msdn.microsoft.com/en-us/magazine/cc163799.aspx

使用WebClient上载文件目录

我搜索并搜索过,找不到办法。 我在要上传的目录中有文件。 文件名不断变化,因此我无法按文件名上传。 这是我尝试过的。 using (WebClient client = new WebClient()) { client.Credentials = new NetworkCredential(“User”, “Password”); foreach (var filePath in files) client.UploadFile(“ftp://site.net//PICS_CAM1//”, “STOR”, @”PICS_CAM1\”); } 但我收到编译器错误: “文件”这个名称在当前上下文中不存在 我所研究的一切都说这应该有效。 有没有人有通过WebClient上传文件目录的好方法?

如何在matlab中删除对.net程序集的引用

我在c#中创建了一个dll。 我在MATLAB中添加了对这个dll的引用,如下所示。 一切正常。 问题是,当我想更新我的dll时,我必须关闭MATLAB,否则我无法重建我的dll,这是相当烦人的。 如何在MATLAB中删除对这个dll的引用 – 我以为会有一行代码来执行此操作? % add reference to dll cls = NET.addAssembly(‘C:\MyFolder\MyDllFolder\bin\Debug\MyDll.dll’); % reference my class mycls = MyNameSpace.MyClass();

Twitter Api 1.1。 .net 3.5

我正在使用.net 3.5框架。 自从twitter的api被更改后,我无法从我的网站访问我的Twitter帐户。 我已经搜索了支持Api 1.1的项目的其他替代方法。 但是没办法,总是告诉我“您正在尝试将此软件包安装到一个针对’.NETFramework,Version = v3.5’的项目中,但该软件包不包含任何与该框架兼容的程序集引用或内容文件。 “ 任何人都可以告诉我其他一些与twitter的Api 1.1和.net framework 3.5兼容的dll,以便我可以从我的网站再次访问我的Twitter帐户吗? 非常感谢。

在.NET中捕获SMTP错误

通常情况下,我会发送这样的电子邮件: int statusCode = 0; string error = null; try { smtp.Send(mailMessage); statusCode = 250; } catch (SmtpFailedRecipientException e) { Log(String.Format(“[Exception] {0}\n\tSmtp: {1}{2}:{3}\n\tStatus Code: {4}\n\tFaild Recipient: {5}”, e.Message, smtp.Key, smtp.Value.Host, smtp.Value.Port, e.StatusCode, e.FailedRecipient)); statusCode = (int)e.StatusCode; error = e.Message; } catch (SmtpException e) { Log(String.Format(“[Exception] {0}\n\tSmtp: {1} – {2}:{3}\n\tStatus Code: {4}”, e.Message, smtp.Key, smtp.Value.Host, smtp.Value.Port, […]

在WPF中运行时调整TextBox的大小

只是想知道如何通过在WPF中拖动角来让用户在运行时调整TextBox控件的大小。 不太重要的是,用于调整所有控件大小的技术是否相同? 谢谢 :)

找不到类型或命名空间(您是否缺少using指令或程序集引用?)

我尝试编译C#程序时出现以下错误: The type or namespace name ‘Login’ could not be found (are you missing a using directive or an assembly reference?) using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace FootballLeague { public partial class MainMenu : Form { FootballLeagueDatabase footballLeagueDatabase; Game game; Team team; Login login; […]