小编Dav*_*ins的帖子

JavaScriptAerializer的等效的XmlAttribute/XmlElement

是否有一个等效的属性可以放在.NET类中的对象属性上,它将执行等效的XmlElement或XmlAttribute?

[XmlRoot("objects")]
public class MyObjects: List<MyObject> { }

[XmlRoot("object")]
public class MyObject {
  [XmlAttribute("name")]
  public string Name { get; set; }
  [XmlAttribute("title")]
  public string Title { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这将返回类似于以下内容的XML:

<objects>
  <object name="David" title="Engineer" />
  <object name="William" title="Developer" />
</objects>
Run Code Online (Sandbox Code Playgroud)

我想拥有JavaScriptSerializer,由Controller类中的ASP.NET MVC框架'Json'方法使用:

public ActionResult Search() {
   // code to populate data object
   return Json(data);
}
Run Code Online (Sandbox Code Playgroud)

返回相同的格式化结果,如下所示:

[{"name":"David","title":"Engineer"},{"name":"William","title":"Developer"}]
Run Code Online (Sandbox Code Playgroud)

目前,使用Json方法输出对象,返回:

[{"Name":"David"}, "Title":"Engineer"}, {"Name":"William", "Title":"Developer"}]
Run Code Online (Sandbox Code Playgroud)

现在,我意识到这个例子是超级简化的,我在这里做的唯一事情就是改变属性名称的大小,但在更高级的场景中,我可以将属性名称重新映射到其他东西......

System.Web.Script.Serialization包含一个ScriptIgnoreAttribute属性,但这只是告诉JavaScriptSerializer在序列化时忽略该属性,但似乎没有任何东西可以改变实际输出的名称或格式呢?

.net javascript serialization

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

使用Cocos2D-iphone进行自定义缓动操作

如何在Cocos2D中创建一个能够随着时间的推移执行"回调"的自定义操作,使每次调用回调的时间比上次调用的时间长(使用类似于Cocos2D已提供的EaseExponentialOut操作).

类似的东西:(不起作用)

id sequence = [Sequence actions: [CallFunc actionWithTarget: self selector: @selector(spinTick)], [DelayTime actionWithDuration: 0.034f], nil];
id repeat = [Repeat actionWithAction: [sequence copy]  times: 18];
id ease = [EaseExponentialOut actionWithAction: [repeat copy]];
[ease setDuration:4];

id play = [CallFunc actionWithTarget:self selector:@selector(play)];
[self runAction: [Sequence actions: [ease copy], [play copy], nil]];
Run Code Online (Sandbox Code Playgroud)

上面的代码执行整个'序列',18次,然后在最后一个序列的末尾执行'play'回调.

但是,EaseExponentialOut似乎对创建的"重复"操作没有任何影响 - 我原本期望它在'sequence'操作中调整'DelayTime'操作的持续时间,但它不会出现去做这个.

我还尝试基于IntervalAction创建自己的自定义操作,但失败了.

iphone objective-c cocos2d-iphone

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