小编CRi*_*ice的帖子

将base 64字符串转换为图像并保存

这是我的代码:

protected void SaveMyImage_Click(object sender, EventArgs e)
        {
            string imageUrl = Hidden1.Value;
            string saveLocation = Server.MapPath("~/PictureUploads/whatever2.png") ; 


            HttpWebRequest imageRequest = (HttpWebRequest)WebRequest.Create(imageUrl);
            WebResponse imageResponse = imageRequest.GetResponse();

            Stream responseStream = imageResponse.GetResponseStream();

            using (BinaryReader br = new BinaryReader(responseStream))
            {
                imageBytes = br.ReadBytes(500000);
                br.Close();
            }
            responseStream.Close();
            imageResponse.Close();

            FileStream fs = new FileStream(saveLocation, FileMode.Create);
            BinaryWriter bw = new BinaryWriter(fs);
            try
            {
                bw.Write(imageBytes);
            }
            finally
            {
                fs.Close();
                bw.Close();
            }
        }
}
Run Code Online (Sandbox Code Playgroud)

顶部imageUrl声明采用Base64图像字符串,我想将其转换为图像.我认为我的代码集仅适用于像"www.mysite.com/test.jpg"这样的图像而不适用于Base64字符串.有人有什么建议吗?谢谢!

c# asp.net base64 image-processing

115
推荐指数
8
解决办法
23万
查看次数

AppFabric缓存 - 正确使用DataCacheFactory和DataCache

我正在寻找最安全的方式来安排appFabric缓存调用的datacache和datacache工厂的使用,每页加载400到700个缓存(几乎没有任何放置).似乎使用单个静态DataCacheFactory(或者可能是循环设置中的一对)是要走的路.

我是否为每个DataCache对象请求调用GetCache("cacheName"),还是在初始化DataCache工厂时将其设置为静态并将其用于所有调用?

我是否必须处理异常,检查失败代码并尝试重试?

当多个线程尝试使用缓存存储并且想要相同的项目(按键)时,是否必须考虑争用?

是否有某种文档正确地探讨了它的设计和用法?


我到目前为止从论坛收集的一些信息:

http://social.msdn.microsoft.com/Forums/en-AU/velocity/thread/98d4f00d-3a1b-4d7c-88ba-384d3d5da915

"创建工厂涉及到连接到集群并且可能需要一些时间.但是一旦你拥有了工厂对象和你想要使用的缓存,你可以简单地重用这些对象来执行put并进入缓存,你应该看到更快的表现."

http://social.msdn.microsoft.com/Forums/en-US/velocity/thread/0c1d7ce2-4c1b-4c63-b525-5d8f98bb8a49

"创建单个DataCacheFactory(singleton)比创建多个DataCacheFactory更有效.你不应该为每个调用创建DataCacheFactory,它会有性能损失."

"请尝试在您的单例中封装循环算法(具有3/4/5工厂实例)并比较负载测试结果."

http://blogs.msdn.com/b/velocity/archive/2009/04/15/pushing-client-performance.aspx

"您可以增加客户端数量以增加缓存吞吐量.但有时如果您希望拥有较小的客户端集并增加吞吐量,则需要使用多个DataCacheFactory实例.DataCacheFactory实例创建与服务器的连接(例如, .g如果有3个服务器,它将创建3个连接)并将来自数据缓存的所有请求多路复用到这些连接上.因此,如果put/get卷非常高,这些TCP连接可能会出现瓶颈.所以一种方法是创建多个DataCacheFactory实例,然后对它们使用操作."


这里到目前为止使用了什么...调用属性,如果返回值不为null,则执行操作.

private static DataCache Cache
{
    get
    {
        if (_cacheFactory == null)
        {
            lock (Sync)
            {
                if (_cacheFactory == null)
                {
                    try
                    {
                        _cacheFactory = new DataCacheFactory();
                    }
                    catch (DataCacheException ex)
                    {
                        if (_logger != null)
                        {
                            _logger.LogError(ex.Message, ex);
                        }
                    }
                }
            }
        }

        DataCache cache = null;

        if (_cacheFactory != null)
        {
            cache = _cacheFactory.GetCache(_cacheName);
        }

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

在Microsoft AppFabric论坛上查看此问题:http://social.msdn.microsoft.com/Forums/en-AU/velocity/thread/e0a0c6fb-df4e-499f-a023-ba16afb6614f

performance caching appfabric

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

如何使用ExpectedException属性强制执行异常消息

我认为这两个测试的行为应该完全相同,事实上我已经使用MS Test在我的项目中编写了测试,现在却发现它不像NUnit那样尊重预期的消息.

NUnit(失败):

[Test, ExpectedException(typeof(System.FormatException), ExpectedMessage = "blah")]
public void Validate()
{
    int.Parse("dfd");
}
Run Code Online (Sandbox Code Playgroud)

MS测试(通过):

[TestMethod, ExpectedException(typeof(System.FormatException), "blah")]
public void Validate()
{
    int.Parse("dfd");
}
Run Code Online (Sandbox Code Playgroud)

无论我给ms测试什么消息,它都会通过.

如果消息不正确,有没有办法让ms测试失败?我甚至可以创建自己的异常属性吗?我宁愿不必为发生这种情况的每个测试编写一个try catch块.

c# nunit unit-testing mstest expected-exception

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

DataTables与IEnumerable <T>

我正在与我合作的另一位程序员进行辩论.

对于数据库返回类型,是否有任何重要的内存使用或性能差异,或其他缺点应该使某人避免使用DataSet和DataTables并支持实现的类型IEnumerable<T>...反之亦然

我更喜欢返回实现IEnumerable<T>(List<T>, T[] etc)的类型,因为它更轻量级,在访问属性时强烈地键入对象,允许有关底层类型的更丰富信息等.当手动使用数据读取器时,它们确实需要更多时间来设置.

这几天使用DataTables的唯一理由就是懒惰吗?

c# datatable ienumerable list

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

使用没有相应CSS规则的CLASS属性是不是很糟糕?

例如,如果我想使用jQuery选择某个具有某个类的元素,并且仅仅因为这个原因,是否应该总是期望这些类应该在css中定义?

<div class="xyz">
something
</div>

<div class="xyz">
something else
</div>

//with example jQuery
$(".xyz").hide();

//is it wrong no element 'xyz' is defined in css?
Run Code Online (Sandbox Code Playgroud)

css jquery standards classname identifier

12
推荐指数
2
解决办法
446
查看次数

AppFabric缓存 - 我可以指定用于所有对象的序列化样式吗?

实现某些自定义序列化的对象可以序列化和反序列化为不同的格式,例如Xml或byte [].

我遇到了一个问题,当我放入缓存时,AppFabric在类上运行IXmlSerializable实现时,我宁愿强制它使用二进制. AppFabric缓存 - 对象的序列化和反序列化要求是什么?

我可以配置吗?

(目前,解决方法是以编程方式将对象序列化为byte [],然后将其发送到缓存中,在出路时反转过程).

configuration serialization caching appfabric appfabric-beta-2

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

添加"System.Data.SQLite"作为参考

当我在asp.net&c#.net中构建我的项目时,它产生了错误

"命名空间'System.Data'中不存在类型或命名空间名称'SQLite'(你是否缺少程序集引用?"

所以,当我试图添加它作为参考时,我无法在我的库中找到"System.Data.SQLite".如何克服这个问题.

system.data.sqlite

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

MS访问舍入精度与分组依据

为什么每个月的员工平均得分总和等于员工平均得分(曾经)?

平均

SELECT Avg(r.score) AS rawScore
FROM (ET INNER JOIN Employee AS e ON ET.employeeId = e.id) INNER JOIN (Employee AS a INNER JOIN Review AS r ON a.id = r.employeeId) ON ET.id = r.ETId
WHERE (((e.id)=@employeeId))
Run Code Online (Sandbox Code Playgroud)

返回 80.737


按月平均

SELECT Avg(r.score) AS rawScore, Format(submitDate, 'mmm yy') AS MonthText,  month(r.submitDate) as mm, year(submitDate) as yy
FROM (ET INNER JOIN Employee AS e ON ET.employeeId = e.id) INNER JOIN (Employee AS a INNER JOIN Review AS r ON a.id = r.employeeId) …
Run Code Online (Sandbox Code Playgroud)

sql precision ms-access group-by rounding

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

无法让Resharper Test Runner在VS 2010上使用MS Test

我最近升级到VS2010 Premium和Resharper 5.1.3000.12.它的测试运行器现在不会执行MS测试.

对话框显示但没有任何反应.

因此,当打开\ Bin\Debug\TestResults .trx文件时,我看到报告为未执行的测试列表.

如果我点击此对话框中的运行,它们将执行正常.

如果我单击以查看"测试运行错误"链接,我会看到错误消息:

"无法排队测试运行'user @ network date':系统无法找到指定的文件"

Nunit测试工作正常.

有任何想法吗?谢谢

testing resharper mstest visual-studio-2010

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

Marmalade移动应用程序开发 - Marmalade是一个不错的选择吗?

我的卡上有一些应用程序,我选择的目标平台是Android,但我知道有一些SDK广告能够编写一次并部署到多个移动操作系统.其中一个似乎是橘子酱.

该产品特别声称每个设备编译为本机代码以实现兼容性.在我承诺价格标签之前,甚至在制造商预期的框架之外进行开发之前,我想知道的是人们对此问题的看法.

编译为本机代码可能会有很高的性能,但我猜测有一个权衡,你会失去对google/apple等提供的所有API的轻松访问权限.

寻找任何其他优点/缺点,以及与橘子酱一样的人是否会遇到路障,希望他们没有采取行动.

我的应用程序不需要3D引擎,它似乎构成了橘子酱展示中的大部分示例应用程序.然而,我的应用程序通常需要存储大量的关系数据和点击Web服务,因此方便地访问sql compact会非常有用.

mobile marmalade

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