小编svi*_*ick的帖子

只能有一个自动列

如何更正MySQL的错误'你只能有一个自动增量列'.

CREATE TABLE book (
   id INT AUTO_INCREMENT NOT NULL,
   accepted_terms BIT(1) NOT NULL,
   accepted_privacy BIT(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Run Code Online (Sandbox Code Playgroud)

mysql ddl

92
推荐指数
4
解决办法
14万
查看次数

获得可用磁盘空间

鉴于下面的每个输入,我想在该位置获得可用空间.就像是

long GetFreeSpace(string path)
Run Code Online (Sandbox Code Playgroud)

输入:

c:

c:\

c:\temp

\\server

\\server\C\storage
Run Code Online (Sandbox Code Playgroud)

c# diskspace

84
推荐指数
5
解决办法
12万
查看次数

剃刀视图引擎 - 如何添加部分视图

我想知道,如果可能的话,使用新的剃刀视图引擎渲染局部的最佳方法.我知道这是当时没有完全完成的事情

现在我使用RenderPage来呈现用户控件:

@RenderPage("~/Views/Shared/LocaleUserControl.cshtml",ViewData.Model)
Run Code Online (Sandbox Code Playgroud)

调用RenderPage的页面使用布局(主)页面,其中定义了三个部分:TitleContent,HeadContent和Maincontent.当我尝试从此页面渲染我的语言环境控件时,似乎还需要这些部分 - 它们应该只在调用页面中需要并且存在.我收到以下消息,无论我是否在部分视图中包含这些部分(显然我不想包含这些部分,但它似乎是一个有趣的调试点......).

以下部分已定义,但尚未在布局页面'〜/ Views/Shared/LocaleUserControl.cshtml'上呈现:TitleContent; HeadContent; 搜索Maincontent

我的部分观点如下(改编自以下链接):

@inherits System.Web.Mvc.WebViewPage<LocaleBaseModel>
@using System.Web.UI;

<p>
     @Html.LabelFor(model => Model.CountryName)
    <br />
    @Html.DropDownListFor(model => Model.CountryName,null, string.Empty, new { @class = "text", accesskey="u"})
</p>
<p>
     @Html.LabelFor(model => Model.StateProvince)
    <br />
     @Html.DropDownListFor(model => Model.StateProvince, null, string.Empty, new { @class = "text", accesskey="t" })
</p>


<script type="text/javascript">
    $(function () {
        var countries = $("#CountryName");
        var statesprovinces = $("#StateProvince");
        countries.change(function () {
            statesprovinces.find('option').remove();
            var url = '@Url.Action("GetStatesProvinces", "Base")';
            $.getJSON(url, { countryId: countries.val() }, …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc razor

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

在catch区等待

我有以下代码:

WebClient wc = new WebClient();
string result;
try
{
  result = await wc.DownloadStringTaskAsync( new Uri( "http://badurl" ) );
}
catch
{
  result = await wc.DownloadStringTaskAsync( new Uri( "http://fallbackurl" ) );
}
Run Code Online (Sandbox Code Playgroud)

基本上我想从URL下载,当它失败时,我想从另一个URL下载异常.两个时间都是异步的.但是代码没有编译,因为

错误CS1985:无法在catch子句的主体中等待

好吧,不管出于什么原因这是禁止的,但这里的代码模式是什么?

编辑:

好消息是C#6.0可能允许在catch和finally块中等待调用.

c# asynchronous async-await c#-5.0 c#-6.0

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

替换Uri中的主机

使用.NET替换Uri的主机部分最好的方法是什么?

即:

string ReplaceHost(string original, string newHostName);
//...
string s = ReplaceHost("http://oldhostname/index.html", "newhostname");
Assert.AreEqual("http://newhostname/index.html", s);
//...
string s = ReplaceHost("http://user:pass@oldhostname/index.html", "newhostname");
Assert.AreEqual("http://user:pass@newhostname/index.html", s);
//...
string s = ReplaceHost("ftp://user:pass@oldhostname", "newhostname");
Assert.AreEqual("ftp://user:pass@newhostname", s);
//etc.
Run Code Online (Sandbox Code Playgroud)

System.Uri似乎没什么帮助.

.net c# uri

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

Windows服务运行的目录是什么?

我创建了一个非常简单的.NET Windows服务,并使用InstallUtil.exe实用程序安装它.

在服务中,我有一段代码:

if (File.Exists("test_file.txt"))
{
   // Do something clever
}
Run Code Online (Sandbox Code Playgroud)

我在与服务相同的目录中创建了一个名为test_file.txt的文件,但代码的注释部分从未被执行过......?

.net windows-services

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

将Dictionary <string,object>转换为匿名对象?

首先,为了让事情更清楚,我将从顶部解释我的情景:

我有一个具有以下签名的方法:

public virtual void SendEmail(String from, List<String> recepients, Object model)
Run Code Online (Sandbox Code Playgroud)

我想要做的是生成一个匿名对象,它具有模型对象的属性以及前两个参数.将模型对象展平为PropertyInfo []非常简单.因此,我想到创建一个包含PropertyInfo和前两个参数的字典,然后转换为匿名对象,其中键是属性的名称,值是属性的实际值.

那可能吗?还有其他建议吗?

.net c# dictionary anonymous-types

75
推荐指数
5
解决办法
6万
查看次数

如何使用log4net记录跟踪消息?

我正在使用log4net将写入日志消息记录到滚动日志文件中.

现在我还将所有跟踪消息重定向System.Diagnostics.Trace到该日志文件.我该如何配置?我试图在log4net文档中找到有关它的任何内容,但没有成功.有可能吗?

我想这样做的原因是因为我对第三方库的Trace消息感兴趣.

<log4net>
    <appender name="R1" type="log4net.Appender.RollingFileAppender">
      <file value="C:\Logs\MyService.log" />
      <appendToFile value="true" />
      <rollingStyle value="Date" />
      <maxSizeRollBackups value="10" />
      <datePattern value="yyyyMMdd" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
      </layout>
    </appender>
</log4net>
Run Code Online (Sandbox Code Playgroud)

.net c# log4net

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

使用原始创建/修改时间戳检出旧文件

有没有办法知道或获得原始的创建/修改时间戳?谢谢.

git

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

什么是project.lock.json?

我按照说明创建了新的.NET Core项目并从cmd运行:

dotnet new
dotnet restore
Run Code Online (Sandbox Code Playgroud)

第二个语句创建project.lock.json包含大量垃圾(不是真正的垃圾,而是大量的依赖,配置等).我假设这些依赖项是.NET框架,它被分解为单独的NuGet包.

我的问题:

  1. 我的假设是否正确?
  2. 我可以通过删除不需要的NuGet包/依赖项来使我的应用程序更轻松吗?
  3. 怎么样?

.net .net-core project.json

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