我越来越注意到正在使用的内容管理系统的数量.我对SiteCore有一些熟悉.我读过一些关于Umbraco的文献.前几天我才刚刚收到乌节的风.我只听到过有关EPiServer的正面反馈.我很快就会进入一个使用它的角色.
这些功能和价格差异很大吗?是什么导致你选择其中一个(或几个)?
编辑
我在这里简要回顾了所谓的免费CMS:免费的Microsoft兼容内容管理系统
在开发一个50k页的网站时,我放弃了Orchard的原因:
Orchard CMS导入工具太慢了.它一次只能接受小批量生产.最初,导入1000条记录需要8分钟.因此,根据该原则,我预计导入所有记录可能需要7个小时.不幸的是,随着更多记录被插入到数据库中,我开始收到性能问题.我甚至开始减少批量大小,这只是暂时在早期阶段.(见 对果园说不)
umbraco sitecore episerver content-management-system orchardcms
我想调试一些托管代码(最初在Windows x86上用C#编写).我知道Valgrind在一些非Windows平台上有一套很好的非托管代码工具.但是,我们在这里讨论的是Windows和托管的.Net代码.那么,Windows上的.Net是否有相当于Valgrind?
我正在使用TeamCity通过msbuild和WebDeploy构建和部署MVC应用程序集合.
在我的解决方案构建/部署之前的步骤中,我将app_offline.htm复制到deploy目录,以便我可以执行SQL更新和其他Web /解决方案管理步骤,包括构建.
WebDeploy中的一个设置是删除未包含在项目中或不需要运行站点的文件.这会每次删除我的app_offline.htm文件.虽然我理解这是一种理想的结果,但有没有办法在部署时排除此文件从部署目录中删除?
我尝试使用ExcludeFromPackageFiles选项添加一个ItemGroup,但没有结果.
在过去的几年里,我已经看过几次特定的模式.请让我描述一下.
在UI中,每个新记录(例如,新客户详细信息)都存储在表单上而不保存到数据库.这显然已经完成,因此不会使数据库混乱或导致不必要的数据库命中.
在UI状态下,使用Guid识别这些对象.当这些保存到数据库时,不会存储其关联的Guids.相反,它们被分配了一个数据库Int作为其主键.
表单可以处理来自数据库的检索项目(使用Int)以及尚未提交的项目(使用Guid)的混合.
在检查表单(使用Firebug)以查看使用了哪个密钥时,我们发现使用了两部分分隔的组合密钥.第一部分是guid(如果从数据库中绘制,则为空guid),第二部分是整数(如果未从数据库中绘制,则存储零).由于组合键的一部分将始终唯一地标识记录,因此它工作得相当好.
这是好习惯吗?任何人都可以告诉我模式名称或建议一个如果它还没有命名?
假设我有"Win","Lose","Incomplete","Forfeit"等文本.我可以直接将文本存储在数据库中.相反,如果使用诸如0 = Win,1 = Lose等数字,我会在数据库性能方面获得实质性改进吗?特别是在字段是我的WHERE子句的一部分的查询中
我想使用C#.NET构建一个简单的音频转换器(主要文件格式之间),所以我需要知道这样做的基本步骤.
谢谢.
这个NLog配置有什么问题?为什么不在"c:\ TempFiles\AppLogs"中创建存档日志?奇怪的是,它似乎适用于archiveEvery ="Minute".这是怎么回事?
<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
autoReload="true" internalLogLevel="Debug" internalLogFile="../logs/nlog.log" throwExceptions="true">
<!-- make sure to set 'Copy To Output Directory' option for this file -->
<!-- go to http://nlog-project.org/wiki/Configuration_file for more information -->
<extensions>
<add assembly="NGinnBPM.MessageBus"/>
</extensions>
<variable name="logDir" value="${basedir}/logs"/>
<variable name="LogsLocation" value="c:\TempFiles\AppLogs" />
<targets>
<target name="err" xsi:type="File"
archiveFileName="${LogsLocation}\logs\contact_errors.{#}.txt"
archiveEvery="Day"
archiveNumbering="Rolling"
maxArchiveFiles="30"
concurrentWrites="true"
fileName="${logDir}/contact_errors.${shortdate}.log" layout="${time}|T${threadid}|M${mdc:nmbrecvmsg}|${level}|${logger}|${message}${onexception:inner=${newline}${exception:format=tostring}}" />
<target name="nginn" xsi:type="File"
archiveFileName="${LogsLocation}\logs\contact_nginn.{#}.txt"
archiveEvery="Day"
archiveNumbering="Rolling"
maxArchiveFiles="30"
concurrentWrites="true"
fileName="${logDir}/contact_nginn.${shortdate}.log" layout="${time}|T${threadid}|M${mdc:nmbrecvmsg}|${level}|${logger}|${message}${onexception:inner=${newline}${exception:format=tostring}}" />
<target name="all" xsi:type="File"
archiveFileName="${LogsLocation}\logs\contact.{#}.txt"
archiveEvery="Day"
archiveNumbering="Rolling"
maxArchiveFiles="30"
concurrentWrites="true"
fileName="${logDir}/contact.${shortdate}.log" layout="${time}|T${threadid}|M${mdc:nmbrecvmsg}|${level}|${logger}|${message}"/> …Run Code Online (Sandbox Code Playgroud) 我很惊讶地发现Object类使用Serializable属性进行修饰.尽管对象实例可能很有用(例如,对于线程同步),但它们没有可以有意义地存储或重新水合的状态.如果CLR Object类没有被标记为可序列化,会遇到什么问题?