小编ale*_*emb的帖子

如何将Type实例转换为泛型类型参数

我基本上有这样的事情:

void Foo(Type ty)
{
    var result = serializer.Deserialize<ty>(inputContent);
}

Foo(typeof(Person));
Run Code Online (Sandbox Code Playgroud)

Deserialize<ty>不起作用,因为它期望Deserialize<Person>.我该如何解决这个问题?

我也想了解泛型如何工作以及它为什么不接受ty哪些是typeof(Person).

编辑:我应该提到这是一个人为的例子.我实际上无法更改函数的签名,因为它实现了一个接口.

编辑:序列化程序是一个JavascriptSerializer并在此处实现为动作过滤器.它被称为:

[JsonFilter(Param="test", JsonDataType=typeof(Person))]
Run Code Online (Sandbox Code Playgroud)

根据Marc和Anton的答案:

var result = typeof(JavaScriptSerializer).GetMethod("Deserialize")
                 .MakeGenericMethod(JsonDataType)
                 .Invoke(serializer, new object[] { inputContent });
Run Code Online (Sandbox Code Playgroud)

c# generics types generic-type-argument

9
推荐指数
2
解决办法
1573
查看次数

SVN:跨项目共享公共代码的最佳方式

我在一个存储库中有多个网站项目,每个存储库都有一个WordPress副本.更新WordPress意味着更新所有项目文件夹并保留冗余副本.这对于同步整个文件夹的rsync脚本非常有用.它还为我提供了完整的网站本地副本.

我可以通过多种方式来改进这一点,并希望得到一些反馈.我在Windows上,最近迁移到Subversion.

  1. 创建每个网站文件夹中WordPress位的符号链接.这将在Subversion和Apache中占据上风.有什么缺点吗?
  2. 有一个WordPress文件夹并将其分支到其他网站中继.我读到分支很便宜并且维护了一个副本,但我不确定是否应该跨越中继进行分支.就个人而言,我认为这是最好的方法.有没有理由避免这种情况?
  3. 最后,我可以保留当前结构并使用脚本在所有网站文件夹中进行复制.

什么是最好的方法,有没有替代解决方案?

svn branch repository

8
推荐指数
2
解决办法
8348
查看次数

MathML,Latex或类似的基于Web的WYSIWYG编辑器

我正在寻找一个基于网络的WYSIWYG(或WYSIWYM)编辑器,如TinyMCE或WMD Editor(用于编写此问题),支持用户编写数学公式.我稍微看了一下LaTeX,但它有一个学习曲线,我不确定对MathML的支持是否广泛.理想情况下,我还想避免重写编辑器而宁愿选择一个现成的编辑器.

想知道你是否有人处理过类似的情况以及你采用/建立了什么解决方案.

wysiwyg latex mathml

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

SVN更新命令以定位单个外部子文件夹?

我在plugins文件夹中有一堆externals目录.

~> svn propedit svn:externals .

akismet http://plugins.svn.wordpress.org/akismet/trunk/
stats http://plugins.svn.wordpress.org/stats/tags/1.3.7/
html-purified http://svn.wp-plugins.org/html-purified/trunk/
Run Code Online (Sandbox Code Playgroud)

有时我会更新一个外部参考来更新版本号从1.3.7到1.3.8但是我被迫向svn up整个文件夹发出一个命令并且根本svn up stats不起作用,而是返回如下内容:

At revision 108437.
Run Code Online (Sandbox Code Playgroud)

而不是从外部存储库更新文件夹.是否可以更新单个外部子文件夹?

svn version-control svn-externals

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

Codeplex + SVN.SVN桥有多好?

我避免使用CodePlex,因为它缺乏对正确SVN的支持,并被关于短缺的投诉所劝阻.最近,我一直想把我的项目从beanstalk移植到codeplex,因为后者更具社交性.

您遇到了哪些问题以及对SVN的支持有多好.SVN网桥有多好?

svn version-control codeplex amazon-elastic-beanstalk

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

如何最大化服务器性能?

我一直在努力了解性能和可伸缩性,并想知道开发人员/系统管理员正在做些什么来为他们的系统做好准备.为了使答案标准化,如果您能够尽最大努力回应以下任何一项,将会有所帮助:

  1. 简介 - 关于Joomla的杂志出版物; JobIgniter + OpenId + AJAX上的Jobs板
    • 性能 - 每台服务器每秒的最大请求数?
    • 硬件 - 服务器,路由器,磁盘,局域网?
    • 软件 - Lighttpd,Memcache,Varnish,Nginx,Squid,Pound,LVS,eAccelerator等.
    • 服务 - 亚马逊S3,Akamai,谷歌计算等
    • 配置 - 静态散列,上游模块,n个请求后x分钟的Memcache,禁用日志记录图像请求等.
    • 其他 - 还有别的吗?(例如,规范化表对于具有大量读取的站点不利)

编辑:请关闭此问题之前,重新考虑 重要的寻求这个东西对于Web开发人员.程序员可以从他/她的代码中调整分号但仍然输给编写memcached的编码器,或者通过Google App Engine组织CDN.

sysadmin performance web-applications

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

在哪些情况下,将字段更改为属性是一个重大变化?

在阅读Jon Skeet关于字段与属性的文章时,他提到将字段更改为属性是一个重大变化.

我想了解这种变化可能导致中断的常见情况.除了方案,如果可以,请提供任何详细信息.

首先,其他地方提到了以下几点:

  • 如果在类上使用反射,则无法将字段更改为属性.即使我没有细节,这也很明显.序列化是一种情况,其中反射用于迭代对象,将字段更改为属性将破坏序列化程序或更改输出

  • 您无法轻松绑定字段.(这是为什么?我在这里阅读)

  • ???

编辑:罗伯特有一个全面的列表,列出了在字段上选择属性的原因,并解释了它们之间的切换如何导致一个突破性的变化.

.net c# field properties

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

TortoiseGit为GitHub发布跟踪器集成

TortoiseGit有一堆问题跟踪器集成插件.一个这样有用的插件是Gurtle,它显示了提交操作期间的未解决问题列表,因此可以在提交期间直接关闭问题.

这样的插件是否存在GitHub问题集成?Github问题还有其他类似的工具吗?

TortoiseGit + Google Code问题跟踪器集成的屏幕截图:

TortiseGit问题跟踪器集成

git version-control github issue-tracking tortoisegit

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

OpenID是垃圾邮件发送者利润丰厚的目标吗?

由于OpenID的性质,垃圾邮件发送者不是一个有利可图的目标吗?对于初学者,您可以在任何网站上创建一个OpenID帐户,并在任何其他网站上使用它,这意味着如果论坛假设登录用户可以信任,我可以登录论坛并撰写几千个帖子.

您是否同意OpenID对垃圾邮件发送者有利可图?OpenID是否会出现猛攻?

security openid spam-prevention

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

返回实体框架中的普通对象以进行序列化

我一直在我的ASP.NET MVC应用程序中尝试Linq to Sql和EF.切换到EF后,我意识到我的XML/JSON序列化输出有额外的缺点.

XML:

<Test xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <EntityKey>
    <EntitySetName>Persons</EntitySetName>
    <EntityContainerName>PersonEntities</EntityContainerName>
    <EntityKeyValues>
      <EntityKeyMember>
        <Key>Id</Key>
        <Value xsi:type="xsd:int">1</Value>
      </EntityKeyMember>
    </EntityKeyValues>
  </EntityKey>
  <Id>1</Id>
  <Name>John</Name>
</Test>
Run Code Online (Sandbox Code Playgroud)

JSON:

{"Id":1,"Name":"John","EntityState":2,"EntityKey"{"EntitySetName":"Persons","EntityContainerName":"PersonEntities","EntityKeyValues":[{"Key":"Id","Value":1}],"IsTemporary":false}}
Run Code Online (Sandbox Code Playgroud)

相反,我只想我的输出:

{"Id":1, "Name":"John"}
Run Code Online (Sandbox Code Playgroud)

我检索对象的EF查询是:

Tests.First(t => t.Id == testId);
Run Code Online (Sandbox Code Playgroud)

serialization json entity-framework poco linq-to-sql

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

ASP.NET自定义配置文件serializeAs属性

我试图在C#中实现一个继承System.Web.Profile.ProfileBase的自定义配置文件类.我有一些System.Collections.Generic.List类型的属性需要序列化为二进制而不是默认的XML.但是,我不确定如何在Profile类中标记该设置.

例如,我有一个名为"SavedReports"的属性,其类型为List.如果我使用web.config方法,我会写:

<code>
<profile>
 <providers>
  <add name="SavedReports" serializeAs="Binary" type="System.Collections.Generic.List`1[MyNamespace.SavedReports]"/>
<code>
Run Code Online (Sandbox Code Playgroud)

但是,我不确定如何在C#中为自定义实现添加serializeAs ="Binary"属性:

[SettingsAllowAnonymous(false)]

    public List<SavedReport> SavedReports
    {
        get { return base["SavedReports"] as List<SavedReport>; }
        set { base["SavedReport"] = value; }
    }
Run Code Online (Sandbox Code Playgroud)

[SettingsAllowAnonymous(false)]

<code>
<profile>
 <providers>
  <add name="SavedReports" serializeAs="Binary" type="System.Collections.Generic.List`1[MyNamespace.SavedReports]"/>
<code>
Run Code Online (Sandbox Code Playgroud)

任何帮助都会很棒.

谢谢,克里斯

c# asp.net profile serialization

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

如何使用Javascript动态属性,以便Foo.Bar返回当前的Date()?

我想创建一个对象属性,每次调用它时都会重新计算它的值.

我抓住了它:

var Foo = { Bar : (function() { return Date(); })() }

alert(Foo.Bar); // shows time at object literal Foo was init'd
                // but need it to show time when it's called
Run Code Online (Sandbox Code Playgroud)

它甚至可能吗?

javascript

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