小编Bar*_*ran的帖子

使用c#进行高质量JPEG压缩

我正在使用C#并希望使用JPEG格式保存图像.然而,.NET降低了图像的质量,并通过压缩来保存它们是不够的.

我想保存原始质量和大小的文件.我使用以下代码,但压缩和质量不像原始的.

Bitmap bm = (Bitmap)Image.FromFile(FilePath); 
ImageCodecInfo[] codecs = ImageCodecInfo.GetImageEncoders(); 
ImageCodecInfo ici = null; 

foreach (ImageCodecInfo codec in codecs)
{ 
    if (codec.MimeType == "image/jpeg") 
    ici = codec; 
} 

EncoderParameters ep = new EncoderParameters(); 
ep.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, (long)100); 
bm.Save("C:\\quality" + x.ToString() + ".jpg", ici, ep);
Run Code Online (Sandbox Code Playgroud)

我正在归档工作室照片和质量和压缩是非常重要的.谢谢.

.net c# compression jpeg image

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

计算两个日期之间的营业时间

如何计算两个日期之间的营业时间?例如,我们有两个日期; 01/01/2010 15:00和04/01/2010 12:00我们工作时间的工作时间是09:00到17:00如何用sql计算工作时间?

sql sql-server math datetime

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

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

将 JObject 转换为匿名对象

我正在尝试将对象传递给 Web api 应用程序。在序列化对象时,它会将其转换为 json 字符串。但是在 wep api 应用程序端,它将对象参数作为 JObject 获取。此代码块来自 web api 应用程序;

//Read web api body content into a string variable
var resultStr = Request.Content.ReadAsStringAsync().Result;
//Convert json string to object with Newtonsoft
var obj = Newtonsoft.Json.JsonConvert.DeserializeObject<object>(resultStr);
Run Code Online (Sandbox Code Playgroud)

此代码生成一个 JObject 但我需要一个匿名对象。Web api 项目不知道类型。可以接收任何对象类型。

我需要一个这样的对象。

object anonyObj = new { Prop1 = "Lorem" };
Run Code Online (Sandbox Code Playgroud)

ExpandoObject 类型不符合我的要求,因此转换为动态类型对我来说不是一个解决方案。

c# reflection json.net deserialization asp.net-web-api

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

linq orderby.tolist()表现

我有一个订单查询到列表并多次调用. list = list.OrderBy().ToList(); 在这段代码中,ToList()方法花费了大量资源并且需要很长时间.如何在不转换回列表的情况下使用其他排序方法加快速度.我应该为数组使用.Sort扩展吗?

c# performance linq-to-objects sql-order-by tolist

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

自动将c ++ dll自动换行到c#

我想在ac#project中使用c ++库.是否有任何包装工具可以自动导入所有类?

c# c++ dll wrapper

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

比较汇编中的位

如果在8051中它们相同或不相等,我如何比较两个位?如果两位相等,我需要跳转.我在寄存器中有一个值,我正在搜索该值是否等于另一个常量值.示例:我有"EDh"值,我在R0寄存器中有另一个值.

assembly 8051 microprocessors

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

在 Web 表单中创建自定义简单注入器作用域

我的 Windows 窗体应用程序中有一个文本框和一个按钮。当使用文本框中写入的值按下开始键时,应使用该值打开一个新表单。我想为每个打开的表单创建一个范围。当我关闭表单时,我想关闭相关范围。

如何使用简单的注入器创建自定义范围?

这是一个简单的示例代码

static class Program
{
    static readonly Container container;

    static Program()
    {
        container = new Container();

        container.Register<MyProgram>();
        //??
        container.Register<MyCustomClass>(Lifestyle.Scoped);

        container.Verify();
    }

    static void Main()
    {
        //Something...
    }
}

class User
{
    public int UserID { get; set; }
    public string UserName { get; set; }
}

class MyCustomClass
{
    User _user;
    public MyCustomClass(User user)
    {
        _user = user;
    }

    public void Print()
    {
        Console.WriteLine(_user.UserName);
    }
}    

class MyProgram
{
    public void StartNewScope(string username, int userid)
    { …
Run Code Online (Sandbox Code Playgroud)

.net c# dependency-injection winforms simple-injector

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