小编Jos*_*arl的帖子

绑定到Windows Phone 7项目数据模板内的MVVM Light中继命令

我正在尝试使用MVVM Light命令将按钮绑定到viewmodel命令,并且由于某种原因,该命令似乎没有被调用.通常我没有使用命令的任何问题,但这个似乎忽略了绑定.

这是我的代码:

<ListBox.ItemTemplate>
    <DataTemplate>
        <StackPanel>
            <Button>
                <Interactivity:Interaction.Triggers>
                    <Interactivity:EventTrigger EventName="Click">
                        <Command:EventToCommand 
                            Command="{Binding MyButtonClickAction}" />
                    </Interactivity:EventTrigger>
                </Interactivity:Interaction.Triggers>
            </Button>

            <StackPanel>
                <TextBlock Text="{Binding MyProperty}"/>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="{Binding MyOtherProperty}" />
                </StackPanel>
            </StackPanel>
        </StackPanel>
    </DataTemplate>
</ListBox.ItemTemplate>
Run Code Online (Sandbox Code Playgroud)

此数据模板位于我的应用程序启动后创建的列表中,我想知道这是否是问题所在.我的理论是创建了视图模型,构造函数尝试使用relay命令设置绑定,但由于列表还没有任何项目,绑定以某种方式失败.

MyProperty和MyOtherProperty的绑定工作正常.

有关如何使其工作的任何建议?

windows-phone-7 mvvm-light

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

NUnit测试因System.IO.FileNotFoundExeption而失败

我的Windows Phone 7项目中的一个NUnit测试因以下错误而失败:

Error   4   Test 'MyProject.Tests.Unit.Service.TaskServiceTests.Save_CallsWebService_WhenCalledWithTaskAndSession' failed: System.IO.FileNotFoundException : Could not load file or assembly 'System.Runtime.Serialization, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e' or one of its dependencies. The system cannot find the file specified.
at Newtonsoft.Json.Serialization.DefaultContractResolver.InitializeContract(JsonContract contract)
at Newtonsoft.Json.Serialization.DefaultContractResolver.CreateObjectContract(Type objectType) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\DefaultContractResolver.cs:line 279
at Newtonsoft.Json.Serialization.DefaultContractResolver.CreateContract(Type objectType) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\DefaultContractResolver.cs:line 545
at Newtonsoft.Json.Serialization.DefaultContractResolver.ResolveContract(Type type) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\DefaultContractResolver.cs:line 188
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.GetContractSafe(Object value) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\JsonSerializerInternalWriter.cs:line 84
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, Object value) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\Serialization\JsonSerializerInternalWriter.cs:line 67
at Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, Object value) in d:\Development\Releases\Json\Working\Src\Newtonsoft.Json\JsonSerializer.cs:line 451
at Newtonsoft.Json.JsonConvert.SerializeObject(Object value, Formatting formatting, …
Run Code Online (Sandbox Code Playgroud)

c# nunit testdriven.net windows-phone-7 restsharp

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

使用Rails默认:资源路由使用jQuery ajax创建记录

在我的Rails应用程序中,我正在尝试使用jQuery ajax通过create我的控制器中的默认方法创建一个新项目.

routes.rb看起来像这样:

resources :items
Run Code Online (Sandbox Code Playgroud)

服务器端代码仍然是生成的:

  # POST /items
  # POST /items.json
  def create
    @item = Item.new(params[:item])

    respond_to do |format|
      if @item.save
        format.html { redirect_to @item, :notice => 'Item was successfully created.' }
        format.json { render :json => @item, :status => :created, :location => @item }
      else
        format.html { render :action => "new" }
        format.json { render :json => @item.errors, :status => :unprocessable_entity }
      end
    end
  end
Run Code Online (Sandbox Code Playgroud)

我的JavaScript:

$("#capture_input").focusout(function() { 
    var description = $(this).val(); 

    $.ajax({
      type: …
Run Code Online (Sandbox Code Playgroud)

ajax jquery ruby-on-rails

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

jQuery .ajax()调用失败

我正在尝试对.ajax()公共Web服务进行jQuery 调用,而我却无法找到正确的语法.

我尝试了几种不同的实现方式.这个:

$.ajax({
  url: 'http://www.geognos.com/api/en/countries/info/all.jsonp',
  dataType: "jsonp",
  success: function() {
    alert('JSONP call succeeded!');
  }
});
Run Code Online (Sandbox Code Playgroud)

它失败并出现以下错误:

all.jsonp:1 Uncaught ReferenceError: callback is not defined
Run Code Online (Sandbox Code Playgroud)

还有这个:

$.ajax({
  url: 'http://www.geognos.com/api/en/countries/info/all.json',
  dataType: "json",
  success: function() {
    alert('JSON call succeeded!');
  }
});
Run Code Online (Sandbox Code Playgroud)

失败,出现此错误:

XMLHttpRequest cannot load http://www.geognos.com/api/en/countries/info/all.json. Origin http://localhost:8888 is not allowed by Access-Control-Allow-Origin.
Run Code Online (Sandbox Code Playgroud)

我通过本地IIS7实例提供页面服务.我也尝试过各种$.getJSON()类似结果的组合.我错过了什么?

这是上面代码的JSFiddle.

更新:我们认为我们有一个解决方案,但是callback is not defined在进行JSONP调用时我仍然会收到错误,即使调用了警报/日志代码.响应URL如下所示:

http://www.geognos.com/api/en/countries/info/all.jsonp?callback=undefined&157148585
Run Code Online (Sandbox Code Playgroud)

并且JSON响应包含如下:

callback({"StatusMsg": "OK", "Results": {"BD": {"Name": "Bangladesh", "Capital": {"DLST": "null", "TD": 6.0, "Flg": 2, …
Run Code Online (Sandbox Code Playgroud)

ajax jquery json

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

在vim中拆分窗口浏览文件,然后在原始窗口中打开文件

我已经尝试了用于vim的NERDTree插件,它非常强大,但对于我用它来说可能有些过分.我不是一般的反插件,但是当我不完全使用它们时,我不喜欢依赖插件.

我真正想要的是能够以分割方式打开文件浏览器,类似于工作方式:Sex:Vex工作方式.我会选择我想要的文件,它会在原始窗口中打开,文件浏览器会消失.

是否有任何内置命令可以这样工作?

vim

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

将带空格的字符串作为参数传递给 PowerShell 函数

我有一个非常简单的 PowerShell 函数,用于给自己做笔记:

New-Alias Note CreateNote    
function CreateNote ( [string]$note )
{
    $message = "`n" + $note
    Add-Content C:\notes.txt $message 
    Write-Host "Saved note."
}
Run Code Online (Sandbox Code Playgroud)

只要我用带引号的字符串调用它,这就会很好用:

PS > Note "This is a note to myself."
Run Code Online (Sandbox Code Playgroud)

我真的很想能够省略引号,类似于如何Write-Host工作:

PS > Write-Host This is a note to myself.
This is a note to myself.
Run Code Online (Sandbox Code Playgroud)

如果我将参数作为数组处理并在将它们附加到文本文件之前将它们连接起来,这似乎是可行的。有一个更好的方法吗?

powershell

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

使用.pdb文件进行发布版本的性能损失?

在.NET应用程序的发布版本中运送.pdb文件会导致性能或内存损失吗?

我的团队维护一个Compact Framework(Windows Mobile 6.0)应用程序,我们希望减少下载和安装大小.在调查我们的选项时,我们意识到我们正在发送.pdb文件,以便我们可以在日志文件中获取详细的堆栈跟踪.

由于.pdb文件使应用程序的大小加倍,我们决定在没有符号提供的额外细节的情况下生活.

不过,我想知道,如果从发布版本中删除这些内容,我们也会看到性能提升.

默认情况下何时加载调试符号?他们似乎需要在应用程序启动时加载,在这种情况下,我们应该看到更快的启动时间.

我理解将.pdbs包含在发布应用程序中的优点/缺点,但我没有找到任何具体解决运行时使用它们的方法.

.net compact-framework

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

如何在ASP.NET MVC3中创建下拉列表?

我正在尝试基于链接到模型的允许值列表在ASP.NET MVC3视图中创建下拉列表.

到目前为止,在我的模型中,我得到了:

namespace NS 
{
    public class Model
    {
        public Model() 
        {
            Status = new List<SelectListItem>();
            Status.Add(new SelectListItem { Text = "New", Value = "New" });
            Status.Add(new SelectListItem { Text = "PaymentPending", Value = "PaymentPending" });
            Status.Add(new SelectListItem { Text = "PaymentProcessed", Value = "PaymentProcessed" });
            Status.Add(new SelectListItem { Text = "Dispatched", Value = "Dispatched" });
            Status.Add(new SelectListItem { Text = "Complete", Value = "Complete" });
            Status.Add(new SelectListItem { Text = "Cancelled", Value = "Cancelled" });
        }

        public List<SelectListItem> …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc-3

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

ASP.NET应用程序中的Cache文件夹上的System.IO访问错误

我正在开发一个访问Team Foundation Server 2010并创建新工作项的ASP.NET应用程序.应用程序在DefaultAppPool中运行,使用NetworkService作为标识.我收到以下错误:

[UnauthorizedAccessException: Access to the path 'Cache\v10' is denied.]

System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) +12892935
   System.IO.Directory.InternalCreateDirectory(String fullPath, String path, Object dirSecurityObj) +1594
   System.IO.Directory.CreateDirectory(String path) +311
   Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.GetDefaultCacheDirectory() +1807816
   Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.InitializeInternal() +225
Run Code Online (Sandbox Code Playgroud)

问题是我使用服务帐户连接到TFS,因为此表单的用户无权在TFS中添加工作项.我已经为网络服务和特定于表单的服务帐户提供了对应用程序根目录的完全控制权.我不确定如何解决这个问题.

我们的服务器运行的是带有IIS 7的Windows Server 2008.当我从本地开发机器以调试模式运行时,该应用程序可以正常工作.

有什么建议?

编辑:下面的格兰特的帖子是正确的,从我能够看到的,但我已经在我的原始帖子之前完成了这些步骤.(这就是为什么路径是Cache\v10而不是长C:\ Program Files ...默认路径.)我给了NetworkService帐户IIS应用程序的根文件夹的完全所有权,但我们仍然得到UnauthorizedAccessException.

我们能够通过将Cache文件夹转换为网络共享并为NetworkService提供对共享的完全访问权限来解决此问题.我不想这样做,但它现在似乎正常工作.如果有人知道我可以尝试做到这一点"正确",我将不胜感激.

asp.net tfs iis-7

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

搞砸了Zsh的路径?

我正在尝试使用zsh作为bash的替代品,而我似乎在MacBook Air上搞砸了我的系统路径.这是我在我的道路.zshrc:

export PATH=/usr/local/bin:/usr/local/sbin/:usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin
Run Code Online (Sandbox Code Playgroud)

一些命令如vim正常工作,但标准喜欢lssed返回如下错误:

zsh: command not found: ls
Run Code Online (Sandbox Code Playgroud)

我很确定这不仅仅是一个zsh问题,因为启动bash终端会产生类似的结果.

好像我在某个地方错过了一个重要的目录.有什么建议?

macos bash zsh

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

在ActiveRecord查询中测试空字符串

在Rails应用程序中,使用ActiveRecord where方法检查属性是零还是空的最简洁方法是什么?

这有效,但似乎应该有一个更好的,内置的方式来做到这一点:

@items = Item.where :context => nil || ''
Run Code Online (Sandbox Code Playgroud)

当您的搜索包含"where"等词语时,Google-fu很难做到很多.

activerecord ruby-on-rails

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