小编Tom*_*Tom的帖子

在可移植类库中生成SHA1哈希

我正在尝试构建一个可移植的类库,为其他类/应用程序生成OAuth URL.这个使用OAuth的类库必须是一个可移植的类库,因此它可以与我正在构建的DropBox API的不同版本一起使用.

此类的一部分需要生成SHA1哈希以生成oauth_signature.

我知道可移植类库不支持System.Security.Cryptography,所以无论如何这个类可以生成没有该类的SHA1哈希?

c# sha1 portable-class-library

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

需要Firefox Date()bug的解决方法

我正在制作一个画布图,它实时更新我们正在向客户展示的信息,并且正在准备时钟上的DST更改.我们的要求之一是图表能够照常运行,而不需要客户在时钟切换时刷新页面.

在解决这个问题时,我发现了Firefox的这个错误:

https://bugzilla.mozilla.org/show_bug.cgi?id=127246

基本上,如果更改系统时间而不必关闭浏览器/选项卡,则JavaScript中的Date()对象不会更新,而且由于我们使用系统时钟查询API,这是一个非常重要的问题.

我假设它没有固定,因为票仍然标记为"新",我也很确定这是导致问题而不是我的代码的另一部分,所以我怎样才能得到系统的当前时间它在Firefox中更改后的时钟而不必刷新页面?

仅供参考我正在使用的Firefox版本是19.0.2

提前致谢

将系统时钟设置为12:00并打开Web应用程序...

var currentHour = new Date().getHours() //returns 12
Run Code Online (Sandbox Code Playgroud)

将系统时钟设置为13:00而无需重新打开Web应用程序.

var currentHour = new Date().getHours() //returns 12
Run Code Online (Sandbox Code Playgroud)

javascript firefox date

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

属性Get v方法的性能

我有一个包含方法集合的类,我想知道使用方法对属性是否有任何性能加值?

有些方法相当复杂,但基本上返回IEnumerable对象集合,而其他方法则是简单的return values.Where(x => x.property == "comparison")Linq查询.

例子

方法:

public IEnumerable<PenDataRow> ActivePens() => Pens.Where(x => x.Status == "Active");
Run Code Online (Sandbox Code Playgroud)

属性:

public IEnumerable<PenDataRow> ActivePens => Pens.Where(x => x.Status == "Active");
Run Code Online (Sandbox Code Playgroud)

将它们标记为属性或方法会更好吗?

c# oop

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

从WPF/XAML中的字符串末尾清除空格

我有一个MVVM应用程序,它使用一个填充了图像的列表框.图像字符串总是来自我无法修改的对象,因为它是使用edmx模型生成的.

为了剪切一个故事,我需要在下面的xaml中添加一种方法,通过SQL从字符串中修剪放在图像路径末尾的空白.

<ListBox ItemsSource="{Binding AllImages}" x:Name="listBox1" Width="300" Margin="10,10,0,10">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal">
                <Image Grid.Column="0" Source="{Binding imagePath}" Height="100" Width="100" />
                <TextBlock Grid.Column="1" Text="{Binding imageId}" />
            </StackPanel>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>
Run Code Online (Sandbox Code Playgroud)

这可能吗?

c# data-binding wpf xaml mvvm

5
推荐指数
2
解决办法
5913
查看次数

在嵌套的 dom 元素上敲除多个绑定

我已经设法让自己在我正在进行的项目中遇到了一些麻烦。

最初,该站点有一个使用 Knockout 的页面,其他页面使用 jQuery。由于 Foundation 模态将自身置于 body 元素的根中的一些问题,我最终将此页面的 viewmodel 绑定应用到 body 元素。

快进 4 个月,在没有预见到我现在遇到的麻烦的情况下,我在 Knockout 中重建了我们的购物篮。购物篮在每个页面上都可见,并使用 ZF2 部分包含在内。

回到我 4 个月前工作的页面,它完全被控制台中的错误消息破坏了:

Uncaught Error: You cannot apply bindings multiple times to the same element.
Run Code Online (Sandbox Code Playgroud)

下面是一些代码来显示我的布局:

<html>
    <head>
        <title>My Website</title>
    </head>
    <body> // 4 month old SPA bound here
        <nav>
            <div id='shopping-basket'> // Shopping basket bound here
                ...
            </div>
        </nav>
        <div id='my-app'>
           ...
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

JavaScript:

var MyAppViewModel = function() {
   // logic
};

var ShoppingBasketViewModel = function() { …
Run Code Online (Sandbox Code Playgroud)

javascript dom knockout.js

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

在Where子句中使用存储过程的结果

我在MS SQL 2008 R2中有一个存储过程(SP)我正在构建,它需要一个用户列表来缩小返回的数据.

我正在使用的系统有一个GetUsers SP,它返回一个用户列表,然后我需要使用它来限制从我自己工作的SP返回的结果.

我看过TABLE变量,但不确定这是否是我需要的.

我如何将一个SP的结果整合到另一个SP的where子句中?

sql sql-server sql-server-2008-r2

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

Doctrine 2 - 从实体外部禁用PrePersist

我正在尝试从Doctrine 2中的实体外部禁用实体事件.每次我们在表中插入新记录时,都需要运行很少的文件操作,这些操作已经在带有prePersist注释的方法中实现.但是,我还需要运行一些数据夹具并跳过文件操作部分作为测试的一部分.基本上我问是否可以通过实体管理器禁用所有prePersist事件而不改变实体中的任何内容.

提前致谢.

php doctrine-orm

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

Angular ui router - 在状态之间共享视图

我正在尝试创建一个Web应用程序,其中我有一个包含三个视图的index.html页面:标题,内容和页脚.

我希望页眉和页脚在页面之间保持一致,但同时不能成为index.html文件的一部分.

我也希望内容视图根据我去过的网址而改变.

这是我目前的解决方案

的index.html

<body>
    <header ui-view="header"></header>
    <main ui-view="content"></main>
    <footer ui-view="footer"></footer>
</body>
Run Code Online (Sandbox Code Playgroud)

app.js

$stateProvider
    .state('my-app', {
        abstract: true,
        views: {
            'header': {
                templateUrl: 'partials/shared/header.html',
                controller: "UserController"
            },
            'footer': {
                templateUrl: 'partials/shared/footer.html'
            }
        }
    })
    .state('my-app.home', {
        url: "/",
        views: {
            'content': {
                templateUrl: 'partials/home.html',
                controller: 'HomeController'
            }
        }
    })
Run Code Online (Sandbox Code Playgroud)

当我加载页面"/"时,它显示页眉和页脚正确加载,我可以在页面上看到它们,但主要内容丢失.

谁能告诉我我做错了什么?

谢谢

angularjs angular-ui-router

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

IsolatedStorageFileStream上不允许操作

我正在构建这个WP7应用程序,它使用视频游戏API来获取某人角色的统计数据(仅用于帮助学习silverlight).它从Web服务中获取玩家详细信息,并将其存储在手机上的隔离存储中,以减轻服务器的压力.

最初我有一个同时具有缓存写入和读取功能的类,但现在我不得不将它分成两个单独的类.缓存编写类目前无关紧要,只是缓存读取类.

在第7行,它抛出一个异常,说"在IsolatedStorageFileStream上不允许操作.",但仅在第二次实例化类时.我已经完成了一些调试,它说文件肯定存在,但它在第二个using子句后停止.

有人可以帮我这个吗?我觉得我错过了一些非常明显的东西.

public class CacheReader
{
    public PlayerData GetPlayerData(string gamertagIn)
    {
        using (IsolatedStorageFile CachedReachData = IsolatedStorageFile.GetUserStoreForApplication())
        {
            using (IsolatedStorageFileStream stream = CachedReachData.OpenFile(gamertagIn + ".xml", FileMode.Open))
            {
                Debug.WriteLine("Data Retrieved from cache");
                XmlSerializer serializer = new XmlSerializer(typeof(PlayerData));
                PlayerData loadedPlayer = (PlayerData)serializer.Deserialize(stream);
                return loadedPlayer;
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

[编辑1] 这是我得到的堆栈跟踪:

at System.IO.IsolatedStorage.IsolatedStorageFileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, IsolatedStorageFile isf)
   at System.IO.IsolatedStorage.IsolatedStorageFileStream..ctor(String path, FileMode mode, FileAccess access, IsolatedStorageFile isf)
   at System.IO.IsolatedStorage.IsolatedStorageFile.OpenFile(String path, FileMode mode, FileAccess access)
   at ReachPhoneApp.CacheReader.GetPlayerFromCache(String …
Run Code Online (Sandbox Code Playgroud)

exception isolatedstorage windows-phone-7

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

可以创建可以重定向到操作的属性吗?

我有一个带有前端和后端的MVC3 Web应用程序.在后端,如果用户未登录(它检查会话),则每个操作都受if..then..else重定向到另一个操作的保护.它没有Windows角色.

我想知道是否可以创建一个执行检查的属性并将用户重定向到登录页面而不必在每个操作中反复插入相同的代码?

编辑#1

我已经创建了一个我的管理员控制器派生的基本控制器,并添加了以下成员后面的病毒说:

    protected override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        try
        {
            if (Session["loggedIn"] == null || (bool)Session["loggedIn"] != true)
            {
                TempData["targetAction"] = ControllerContext.ParentActionViewContext.RouteData.Values["action"] + "/" + ControllerContext.ParentActionViewContext.RouteData.Values["controller"];
                RedirectToRoute("Admin/Login");
            }
        }
        catch (NullReferenceException)
        {
            RedirectToRoute("Admin/Login");
        }
    }
Run Code Online (Sandbox Code Playgroud)

但是这段代码不起作用.有人可以告诉我有什么问题吗?

c# asp.net-mvc

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

测试类可以具有属性吗?

我正在为一个应用程序的单元测试创​​建一个TestClass,我想做的一件事就是运行一个测试方法,检查方法已经正确运行,根据结果在测试类中的类属性中存储一个值,然后使用它以后的方法中的值.

我试过这样做,发现只要编译器从一个方法移动到另一个方法,我设置的所有属性都被擦除干净.我已经检查了断点,并在第一个方法的末尾,值在属性中,然后在第二个方法的开头,相同的属性为null.

看了这个,似乎没有其他人尝试同样的事情,所以有可能在方法之间共享一个值,还是我采取了错误的方法?

提前致谢.

c# oop testing unit-testing

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

MVC3 Razor - 格式化字符串集合

我有一个在MVC3 Razor中重复的字符串集合,代码如下:

        @if (Model.Publications != null)
        {
            <tr>
                <th>Publications</th>
                <td>
                    @foreach (var publication in @Model.Publications)
                    {
                        <text>@publication.Title</text>
                    }
                </td>
            </tr>
        }
Run Code Online (Sandbox Code Playgroud)

现在当我展示这个时,我得到的是:

Book1Book2Book3
Run Code Online (Sandbox Code Playgroud)

但我真的想要的是这样的:

Book1, Book2, Book3
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法在MVC剃刀中实现这一点而无需结合'if'和'foreach'语句?

asp.net-mvc razor

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