小编Ole*_* Sh的帖子

SQL Server:存储过程或函数

我有一个包含2列(A as boolB as text)的表,这些列可以是:

  1. 两者都是空的
  2. 如果A为False,则B应为null
  3. 如果A为True,那么B应该不为空

有规则.我想创建一个存储过程或函数来在行添加或更新(通过触发器)时检查这些规则.什么是更好的,存储过程或功能?如果功能,哪种类型?一般来说,哪种变体是最好的(返回布尔值或其他方式等)?

sql-server stored-procedures function

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

解析JSON时使用dynamic关键字

我是dynamic在C#中使用关键字的新手.这似乎很简单,但我似乎无法有效地使用它.

我从Facebook看到这个例子:

var client = new FacebookClient();
dynamic me = client.Get("totten");
string firstname = me.first_name;
Run Code Online (Sandbox Code Playgroud)

它工作正常,但如果你me在调试器中查看,那么你可以看到client.Get()返回简单的JSON.在Facebook文档中也是如此:

此请求的结果是包含各种属性(如first_name,last_name,用户名等)的动态对象.您可以通过在Web浏览器中浏览到http://graph.facebook.com/totten来查看此请求的值 .JSON结果如下所示.

我想用Foursquare返回的JSON做同样的躲闪:

private static string GetReturnedUrlFromHttp(string url)
{
    HttpWebRequest webRequest = WebRequest.Create(url) as HttpWebRequest;
    webRequest.Timeout = 10000;
    webRequest.Method = "GET";
    WebResponse response = webRequest.GetResponse();

    string responseStr = String.Empty;

    using (var stream = response.GetResponseStream())
    {
        var r = new StreamReader(stream);
        responseStr = r.ReadToEnd();
    }

    return responseStr;
}

public static void FillDataFromFoursquareUsingDynamic()
{
    string foursquare_url_detail = "https://api.foursquare.com/v2/venues/4b80718df964a520e57230e3?locale=en&client_id=XXX&client_secret=YYY&v=10102013"; …
Run Code Online (Sandbox Code Playgroud)

c# json dynamic

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

Azure VM和SQL Azure

我的Web项目使用的软件需要安装在目标PC上.所以,我必须使用Azure VM而无法使用Azure Cloud Service,对吧?另外,我可以将SQL Azure与虚拟机一起使用吗?

azure azure-virtual-machine azure-sql-database

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

修剪所有属性的操作

我有一个典型的网站管理部分,管理员可以添加许多不同的实体.作为开发人员,我必须修剪它们中的每一个(以防止输入像'status name'这样的实体.我这样做,即在Validate方法IValidatableObject接口中:

   public class AddProjectViewModel : ProjectFormBaseViewModel, IValidatableObject
    {
        public int? ParentProjectID { get; set; }

        public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
        {
            ProjectName = ProjectName.Trim();
            DescriptionText = DescriptionText.Trim();
Run Code Online (Sandbox Code Playgroud)

当然,我可以在项目添加到DB或其他任何方法的方法中执行此操作.但如果我有10个表单,每个表单有2-3个字符串属性,那么这个代码有点"直".也许任何人都可以推荐其他更"美观"的方法来修剪所有字符串参数?即通过属性的属性或其他东西?

c# trim

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

C#:指数格式说明符

我有一个双号:

element.MaxAllowableConcLimitPpm = 0.077724795640326971;
Run Code Online (Sandbox Code Playgroud)

我需要将其显示为

7.7725e-2

当我尝试使用它时:

element.MaxAllowableConcLimitPpm.ToString("e4", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)

它返回

7.7725e-002

怎么说尾数应该有一个符号而不是3个?

格式如下:

.ToString("0.0000e0")
Run Code Online (Sandbox Code Playgroud)

回报

5.0000e2

代替

5.0000e + 2

c# formatting mantissa number-formatting exponential

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

EF:当它们不为空时,按2个字段排序

我有一个带有字段的实体:

public partial class Load 
{
    public DateTime CreatedOn { get; set; }
    public DateTime? UpdatedOn { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我必须通过以下方式订购记录(DESC):如果UpdatedOn具有值,则"查看"此值,否则请查看CreatedOn值.怎么做?

c# sql entity-framework entity-framework-6

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

.NET Core:代码合同方法目前已关闭?

几年前,有很多有关代码合同的信息。我没有时间去学习它,现在才发现这一次:)

但是当我尝试使用它时,我发现Visual Studio 2017不支持它,CC工具上次更新是在3年前...

那么,代码合同暂时关闭了吗?

code-contracts .net-core

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

带图像的 WPF 按钮样式

我想为里面有不同图像的按钮创建一个样式。我尝试执行以下操作:

<Style TargetType="Button"
       x:Key="PaintButton">
  <Setter Property="Width"
          Value="40"></Setter>
  <Setter Property="Height"
          Value="40"></Setter>
  <Setter Property="Template">
    <Setter.Value>
      <ControlTemplate>
        <Grid>
          <Border CornerRadius="3"
                  BorderThickness="2"
                  BorderBrush="Green">
            <Image Source="{TemplateBinding Button.Content}" />
          </Border>
        </Grid>
      </ControlTemplate>
    </Setter.Value>
  </Setter>
</Style>
Run Code Online (Sandbox Code Playgroud)

并尝试使用:

<Button Content="images/pen.png"
        HorizontalAlignment="Left"
        Style="{DynamicResource PaintButton}" />
Run Code Online (Sandbox Code Playgroud)

但未显示图像。为什么以及如何正确地做到这一点?

wpf styles

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

ASP.NET Core:标记助手“选择”为空

我需要一个带有select元素的视图。我有以下VM类:

public class EditTicketVM
{
    public EditTicketVM()
    {
        Statuses = new SelectList(new List<SelectListItem>{
            new SelectListItem("Open", "open"),
            new SelectListItem("Pending", "pending"),
            new SelectListItem("Hold", "hold"),
            new SelectListItem("Solved", "solved"),
            new SelectListItem("Closed", "closed"),
        });

    }

    public string Description { get; set; }
    public string Subject { get; set; }
    public string Status { get; set; }

    public SelectList Statuses { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

并选择页面上的元素:

<select asp-for="Status" class="form-control" asp-items="Model.Statuses" />
Run Code Online (Sandbox Code Playgroud)

但是在结果页面上,此元素为空:

在此处输入图片说明

我的代码有什么不正确?

html c# select tag-helpers asp.net-core

0
推荐指数
1
解决办法
367
查看次数

SimpleMembership - UserManager.FindAsync 在 MVC5 中不起作用

以下代码不起作用:

        if (ModelState.IsValid)
        {
            var user = await UserManager.FindAsync(model.UserName, model.Password);
            if (user != null)
            {
                await SignInAsync(user, model.RememberMe);
                return RedirectToLocal(returnUrl);
            }
            else
            {
                ModelState.AddModelError("", "Invalid username or password.");
            }
        }
Run Code Online (Sandbox Code Playgroud)

用户为空。模型有正确的值。

我将此代码更改为:

        if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
        {
            return RedirectToLocal(returnUrl);
        }

        // If we got this far, something failed, redisplay form
        ModelState.AddModelError("", "The user name or password provided is incorrect.");
        return View(model);
Run Code Online (Sandbox Code Playgroud)

它工作正常。为什么以及如何修复?

asp.net-mvc simplemembership asp.net-mvc-5

-1
推荐指数
1
解决办法
5175
查看次数

C#async-await如何处理长操作?

我的服务中有以下代码:

        // add Txt record to DNSimple with verification text
        await CreateDomainRecordAsync(domain, new DomainRecordDto
        {
            //....
        });

        // verify domain on Office365
        await _office365domainService.VerifyDomainAsync(domain);
Run Code Online (Sandbox Code Playgroud)

第一个操作是呼叫端点#1(域名管理员)并将TXT记录添加到域.第二个操作是呼叫端点#2(Office365),它验证域regIOS中是否存在TXT记录.

这段代码不起作用,我在第二次操作时遇到异常,TXT记录不存在.

我创建了测试代码:

    public IActionResult LongOperation()
    {
        Thread.Sleep(10 * 1000);
        return Ok();
    }

    public IActionResult Test()
    {
        return Ok();
    }
Run Code Online (Sandbox Code Playgroud)

并称之为:

        using (HttpClient httpClient = new HttpClient())
        {
            httpClient.BaseAddress = new Uri("http://test***.azurewebsites.net/home/");
            await httpClient.GetAsync("LongOperation");
        }

        using (HttpClient httpClientLocal = new HttpClient())
        {
            httpClientLocal.BaseAddress = new Uri("https://localhost:44366/Home");
            await httpClientLocal.GetAsync("Test");
        }
Run Code Online (Sandbox Code Playgroud)

它按预期工作,调用第一种方法,等待10秒,同时执行"LongOperation",然后调用"Test"方法.

为什么我的域名真实代码不等待以及如何正确执行?

c# async-await

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