问题列表 - 第45769页

向下转换通用元素类型

public class ConfigControlBase<T> : UserControl
    where T : ProviderBase
{
    public T Provider { get; set; }

    public void Init(T provider)
    {
        this.Provider = provider;
    }
}


public abstract class ProviderBase
{
    public abstract ConfigControlBase<ProviderBase> GetControl();
}

public class ProviderXConfigControl : ConfigControlBase<ProviderX>
{
}

public class ProviderX : ProviderBase
{
    public override ConfigControlBase<ProviderBase> GetControl()
    {
        var confControl = new ProviderXConfigControl() as ConfigControlBase<ProviderX>;
        return confControl;
    }
}
Run Code Online (Sandbox Code Playgroud)

return confControl; 抛出异常:

无法隐式转换ConfigControlBase<ProviderX>ConfigControlBase<ProviderBase>

.net c# generics exception-handling

7
推荐指数
2
解决办法
479
查看次数

如何迭代这个对象

我有这个对象:

var navArray = {
  '#item1' : 0,
  '#item2' : 1,
  '#item3' : 2,
  '#item4' : 3,
  '#item5' : 4,
  '#item6' : 5
}
Run Code Online (Sandbox Code Playgroud)

下面代码中的ident var是一个数字,我需要找出它在数组中对应的属性...所以如果ident为1我想得到#item2返回..

我该怎么做呢?

var navArray = {
  '#item1' : 0,
  '#item2' : 1,
  '#item3' : 2,
  '#item4' : 3,
  '#item5' : 4,
  '#item6' : 5
}
if(typeof(ident) === "number") {
    for(i in navArray) {
    }
}
Run Code Online (Sandbox Code Playgroud)

javascript

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

UITextFieldDelegate与UITextField控件事件

如果我想处理对UITextField的更改,例如用户输入它; 看起来这可以通过为该文本字段分配委托,然后让委托实现shouldChangeCharactersInRange,或者通过向textField添加目标,以及处理UIControlEventEditingChanged事件来完成.

除了使用委托方法,您可以返回NO并因此阻止用户进行编辑,这两件事之间有什么区别吗?

处理编辑开始或编辑结束的问题相同.可以使用适当的委托方法或适当的事件来完成.如果控件事件可以执行必要的工作,那么textField委托实际上是什么?

uitextfield uicontrol ios uitextfielddelegate

10
推荐指数
3
解决办法
6224
查看次数

PHP - 键/值对中的拆分字符串

我有一个像这样的字符串:

key = value,key2 = value2

我想把它解析成这样的东西:

array(
  "key" => "value",
  "key2" => "value2"
)
Run Code Online (Sandbox Code Playgroud)

我可以做点什么

$parts = explode(",", $string)
$parts = array_map("trim", $parts);
foreach($parts as $currentPart)
{
    list($key, $value) = explode("=", $currentPart);
    $keyValues[$key] = $value;
}
Run Code Online (Sandbox Code Playgroud)

但这似乎是荒谬的.必须有一些方法来使用PHP更聪明地做到这一点吗?

php string split key-value

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

Asp.net mvc:自动生成验证!

这是类代码检查,没有DataAnnotation.

 public int Rotate { get; set; }
Run Code Online (Sandbox Code Playgroud)

这是它的用途

@Html.HiddenFor(model => model.Screen.Rotate)
Run Code Online (Sandbox Code Playgroud)

这里生成html,y生成验证规则????

<input type="hidden" value="" name="Screen.Rotate" id="Screen_Rotate" data-val-required="The Rotate field is required." data-val-number="The field Rotate must be a number." data-val="true">
Run Code Online (Sandbox Code Playgroud)

注意:如果我将int Rotate更改为string Rotate,那么它不会为data-val-required,data-val-number等验证生成额外的属性.

asp.net asp.net-mvc-3

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

git - 从特定的分支拉

我已经克隆了一个git存储库到我的开发服务器,然后切换到开发分支,但现在我不能做一个git pull来更新分支.

如何更新服务器上的代码?

git

169
推荐指数
8
解决办法
35万
查看次数

Ruby和Ruby on Rails有什么区别?

Ruby和Ruby on Rails有什么区别?好的,我知道Ruby on Rails是一个基于脚本语言Ruby构建的Web应用程序框架.

但为什么godaddy.com上有选择托管Ruby和托管Ruby on Rails?
为C#和asp.net提供托管服务会是一样的吗?

你可以在这里查看

ruby web-hosting ruby-on-rails

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

基于JAX-RS的实现中的简单REST资源版本控制?

REST资源版本控制的最佳实践是将版本信息放入HTTP请求的Accept/Content-Type标头中,使URI保持不变.

以下是用于检索系统信息的REST API示例请求/响应:

==>
GET /api/system-info HTTP/1.1
Accept: application/vnd.COMPANY.systeminfo-v1+json

<==
HTTP/1.1 200 OK
Content-Type: application/vnd.COMPANY.systeminfo-v1+json
{
  “session-count”: 19
}
Run Code Online (Sandbox Code Playgroud)

请注意,MIME类型中指定了版本.

这是版本2的另一个请求/响应:

==>
GET /api/system-info HTTP/1.1
Accept: application/vnd.COMPANY.systeminfo-v2+json

<==
HTTP/1.1 200 OK
Content-Type: application/vnd.COMPANY.systeminfo-v2+json
{
  “uptime”: 234564300,
  “session-count”: 19
}
Run Code Online (Sandbox Code Playgroud)

有关更多说明和示例,请参见http://barelyenough.org/blog/tag/rest-versioning/.

是否有可能在基于Java的JAX-RS实现中轻松实现此方法,例如Jersey或Apache CXF?

目标是让几个@Resource类具有相同的@Path值,但是根据MIME类型中指定的实际版本提供请求?

我一般都研究过JAX-RS,特别是Jersey,并没有发现它的支持.泽西岛没有机会以相同的路径注册两个资源.需要实现WebApplicationImpl类的替换以支持它.

你能提出什么建议吗?

注意:需要同时提供同一资源的多个版本.新版本可能会引入不兼容的更改.

java versioning rest jax-rs jersey

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

带有get/set函数的PHP属性

其他语言的一个便利功能是能够为属性创建get和set方法.在试图找到一种在PHP中复制此功能的好方法时,我偶然发现了这一点:http: //www.php.net/manual/en/language.oop5.magic.php#98442

这是我对该课程的细分:

<?php

class ObjectWithGetSetProperties {

    public function __get($varName) {
        if (method_exists($this,$MethodName='get_'.$varName)) {
            return $this->$MethodName();
        } else {
            trigger_error($varName.' is not avaliable .',E_USER_ERROR);
        }
    }

    public function __set($varName,$value) {
        if (method_exists($this,$MethodName='set_'.$varName)) {
            return $this->$MethodName($value);
        } else {
            trigger_error($varName.' is not avaliable .',E_USER_ERROR);
        }
    }

}

?>
Run Code Online (Sandbox Code Playgroud)

我的计划是扩展这个类get_someproperty()set_someproperty()在这个扩展类中定义适当的.

<?php
class SomeNewClass extends ObjectWithGetSetProperties {
    protected $_someproperty;
    public function get_someproperty() {
        return $this->_someproperty;
    }
}
?>
Run Code Online (Sandbox Code Playgroud)

麻烦的是,基类ObjectWithGetSetProperties是无法看到我的方法get_someproperty()SomeNewClass.我总是得到错误,"密钥不可用".

有没有办法解决这个问题,允许基类ObjectWithGetSetProperties …

php oop inheritance magic-methods

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

在addEventListener提交仍然提交表单时返回false?

var form = document.forms[0]; 
form.addEventListener("submit", function(){
  var email = form.elements['answer_13829'].value;
  if( email == 'geobraks@yahoo.ca') {
     alert('redirecting the user...');
     window.location = 'xxxx';
     return false;
  }
});
Run Code Online (Sandbox Code Playgroud)

我不明白 - 它仍然提交表格.有人可以修补我的代码并使其工作吗?

javascript javascript-events

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