小编Sam*_*nes的帖子

带有"validateAllProperties"的Validator.ValidateObject为true,在第一次出错时停止

我有一个自定义类(简单):

using System;
using System.ComponentModel.DataAnnotations;

public class MyClass {
    [Required]
    public string Title { get; set;}
    [Required]
    public string Description { get; set;}
}
Run Code Online (Sandbox Code Playgroud)

我想验证这个对象,并获得一个不正确的异常.

如果我做 :

void Validate() {
    var objectToValidate = new MyClass { }; // Both properties are null at this time
    var ctx = new ValidationContext(objectToValidate, null, null);
    Validator.ValidateObject(objectToValidate, ctx, true);
}
Run Code Online (Sandbox Code Playgroud)

抛出ValidationException但它只显示第一个错误,即使我为validateAllProperties参数指定了true .

如果我重构我的代码:

void Validate() {
    var objectToValidate = new MyClass { }; // Both properties are null at this time
    var …
Run Code Online (Sandbox Code Playgroud)

c# validation c#-4.0

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

OrderBy实体框架中的虚拟属性

是否可以orderby在实体上使用虚拟属性?

我有一个类似于的类:

public int Id{get;set;}
public string Name {get;set;}

public virtual string TestName
{
   get { return string.Format("{0}{1}", Name , Id); }
}
Run Code Online (Sandbox Code Playgroud)

当我通过TestName属性订购时,我收到错误:

"LINQ to Entities不支持指定的类型成员'TestName'.仅支持初始化程序,实体成员和实体导航属性."

我最初在部分类中使用了该方法,该属性用于返回数据但不用于排序.

有没有解决的办法?

c# linq entity-framework

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

在上传时将图片转换为png

当用户上传jpg/gif/bmp图像时,我希望将此图像转换为png图像,然后转换为base64字符串.

我一直试图让这个工作,但我真的打了一堵砖墙,有人可以帮我吗?

我目前没有图像转换的代码如下:

public ActionResult UploadToBase64String(HttpPostedFileBase file)
        {

                var binaryData = new Byte[file.InputStream.Length];
                file.InputStream.Read(binaryData, 0, (int) file.InputStream.Length);
                file.InputStream.Seek(0, SeekOrigin.Begin);
                file.InputStream.Close();

                string base64String = Convert.ToBase64String(binaryData, 0, binaryData.Length);

...
}
Run Code Online (Sandbox Code Playgroud)

c# httppostedfilebase

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

按结束数字排序以数字结尾的字符串

我有一系列的值,如:

item1, item3, item2, item4, item5, item8, item6, item9, item10, item7, item11
Run Code Online (Sandbox Code Playgroud)

当我使用.sort()j 在javascript中对它们进行排序时得到以下结果:

item1, item10, item11, item2, item3, item4, item5, item6, item7, item8, item9
Run Code Online (Sandbox Code Playgroud)

我知道这是因为这些项目是字符串,这sort()是设计目的,但我怎样才能将它们分类为以下内容?

item1, item2, item3, item4, item5, item6, item7, item8, item9, item10, item11
Run Code Online (Sandbox Code Playgroud)

谢谢,

javascript arrays sorting

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

如何将图像裁剪成圆圈?

我正在尝试将图像裁剪成圆形,圆形区域外面的区域为白色.

新的图像尺寸将与原始尺寸相同,只是有效地舍入图像.

我熟悉如何使用GDI +裁剪图像,通过拍摄现有图像并将其复制到新图像中来绘制矩形/正方形,但我看不到如何用白色填充圆弧/圆的外部.

这可能吗?

更新 - 我想做服务器端,因为不同的浏览器/平台不同地渲染css半径,或者根本不同

我到目前为止的工作是:

public static Image CropCircle2(Image imgSource)
    {
        Image imgTarget = new Bitmap(imgSource.Width, imgSource.Height);
        Graphics g = Graphics.FromImage(imgTarget);
        var path = new System.Drawing.Drawing2D.GraphicsPath();
        path.AddEllipse(0, 0, imgTarget.Width, imgTarget.Height);
        g.SetClip(path);
        g.DrawImage(imgSource, 0, 0);

        return imgTarget;
    }
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc gdi+ image

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

从 dotnetzip 创建的 zip 文件中提取时出错 - “Windows 无法完成提取。”

我正在使用dotnetzip 动态创建一个 zip 文件,以作为流通过 mvc 返回。

我能够添加已经是流的文件,即动态创建的文件。我还添加了从 base64 字符串创建的文件。

创建和下载 zip 文件很好,当我使用 windows 资源管理器(windows 7 或 8)打开 zip 文件时,我可以按预期看到所有条目。打开从内存流创建的文件打开没有问题,但是当我尝试打开从 base64 字符串创建的文件时,Windows 资源管理器返回错误

Windows 无法完成提取。无法创建目标文件。

如果我尝试将文件从 Windows 资源管理器中的 zip 文件拖到另一个文件夹,我会收到错误消息:

在此处输入图片说明

如果我打开相同的 zip 文件或使用WinRAR 解压缩并打开任何条目,我没有任何问题。

有任何想法吗?我在想也许我需要向 base64 字符串或流添加内容类型?Dotnetzip似乎没有参数来指定内容类型...

我已确保 zip 文件或其任何条目没有加密

c# stream dotnetzip

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