我有以下配置我的邮件:
<system.net>
<mailSettings>
<smtp from="foo@bar.com" deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory pickupDirectoryLocation="C:/test"/>
<network host="localhost" userName="" password=""/>
</smtp>
</mailSettings>
</system.net>
Run Code Online (Sandbox Code Playgroud)
这是我的.Release版本:
<system.net>
<mailSettings>
<smtp from="foo@bar.com" xdt:Transform="RemoveAttributes(deliveryMethod)">
<network xdt:Transform="Replace" host="192.168.1.9" userName="" password="" />
</smtp>
</mailSettings>
</system.net>
Run Code Online (Sandbox Code Playgroud)
我该如何删除
<specifiedPickupDirectory pickupDirectoryLocation="C:/test"/>
Run Code Online (Sandbox Code Playgroud)
所以它根本没有显示在我的.Release中?
另外,我想System.Diagnostics完全删除其他名称空间.这样做的语法是什么?
似乎有几种方法可以将jQuery对话框与ASP.NET MVC集成.是否有一种特定的方法成为普遍接受的最佳实践方法?
作为一个例子:我有一个列表页面,点击任何列出的项目的"编辑"在jQuery对话框中打开一个表单,填充项目的详细信息.用户编辑详细信息并单击"保存".如果保存在服务器端成功,则关闭对话框并使用新数据重新构建列表.如果在服务器端保存失败,则对话框保持打开状态并向用户显示错误消息.
选项1似乎更符合"纯粹的"ASP.NET MVC.但是,它似乎具有大的HTTP有效负载(因为我们在每个请求时将整个页面发送回浏览器),并且服务器端性能较慢(因为我们在每个请求上重新构建列表).
选项2似乎与更现代的基于Ajax的Web应用程序(更小的HTTP有效负载,更细粒度的操作)更加一致.但是,似乎许多控制器都是JSON控制器,我将编写大量客户端代码来编组来自JSON对象的数据到/从表单字段,显示错误消息等.它似乎也像我我会错过许多很酷的MVC功能,比如EditorFor()和ValidationMessageFor().它只是"感觉"就像我正在使用MVC系统而不是它.
[编辑:添加选项3]选项3似乎是1和2之间的混合.我使用"纯"MVC方法来构建和填充表单,并返回完整格式的HTML FORM标记.将HTML返回到ajax请求感觉很奇怪,因为它很冗长,但我可以克服它.后期操作很好,紧凑的JSON比ajax"感觉"更好.但是,不幸的是,有效负载对象是FormCollection而不是真正的viewmodel对象.看起来我可以使用一些MVC便利(EditorFor())而不是其他(ValidationMessageFor()).
我正在寻找"正确"的方式来做到这一点,而不仅仅是最快的方式来破解它.是的,是的,我知道没有普遍的"正确"方式.但我确信有一些明显错误的方法,我想避免它们.
我在ASP.NET/C#中很有经验,但我对MVC很新.在此先感谢您的帮助!
[编辑] - 杰出的回答 - 我希望我可以奖励多个答案/赏金,因为我发现几个回复非常有用.但是,由于我不能,我将最高投票的答案标记为答案.再次感谢所有受访者!
有没有办法让我在ConfigurationSection的自定义子类中包含一个简单的字符串数组或List <string>?(或者简单数据对象的数组或通用列表,就此而言?)
我已经熟悉新的(和非常详细的)ConfigurationSection,ConfigurationElement和ConfigurationElementCollection类,但我还不是专家.
似乎ConfigurationSection应该自己处理简单的集合/列表,而不必为每一个创建自定义的ConfigurationElementCollection子类.但是我没有在网上找到任何关于这种能力的提法.
编辑:接受Dan的回答作为答案,因为它可能是我最接近"旧式"configSections的东西.我总是发现任何XmlSerializable对象都可以很容易地成为一个configSection,它简单,灵活,优雅.我确信新框架更强大; 然而令人遗憾的是,对于简单的配置结构来说,这很麻烦,我们已经减少了回到String.Split().
我有一些代码,我希望在调用ASMX函数的生命周期中尽早执行.对于我们的ASPX页面,此代码位于基类的Page_Init()函数中,所有ASPX页面都从该函数继承.
ASMX是否与ASPX的Page_Init()函数等效?
更好的是,是否有像ASPX一样的ASMX生命周期图? http://msdn.microsoft.com/en-us/library/ms178472.aspx
如果有一个ASMX等效于Page_Init(),我假设我可以在一个公共基类中实现代码,我的所有ASMX类都可以从中继承,更正吗?
编辑: 很好的回应 - 感谢您的帮助!
我有一个.NET 3.5库程序集,它使用WSE 3.0与外部Web服务进行通信.我们将系统升级到.NET 4,但外部Web服务将保持不变.(编辑:不确定它是否相关,但外部Web服务是用Java实现的)
为了尽可能快地完成迁移过程,除非绝对必要,否则我不想更改系统代码.一旦我将系统更新到.NET 4,WSE3库是否仍然可以工作?
我已经看到几个问题表明我们不应该再使用WSE来构建web服务(参见下面的参考资料).但是,我将它纯粹用作客户端,与外部Web服务进行通信,因此我对它是否有效感到困惑.
参考文献:
如何使整个jqGrid禁用/只读?
我有一个带有逻辑"编辑部分"的页面,当用户选择要编辑的内容时我会显示该页面,并在用户完成编辑(保存或取消)时隐藏.在显示编辑部分时,我禁用了页面上的其他几个元素.我想禁用他们点击jqGrid的能力,因此他们无法更改所选行,重新排序等.但我找不到一种方法来禁用/启用整个网格.
如果已经回答了这个问题,请道歉 - 其他问题似乎集中在仅禁用jqGrid中的某些行为.
编辑:最好,我想要一种不依赖于另一个第三方插件的方法.当然,他们没有错!但是我的客户对它们有一定程度的不情愿,所以使用纯粹的jQuery/jQueryUI/jqGrid解决方案我的生活会更容易一些.:)
我一直在阅读的大多数MVC教程似乎为每个模型创建了4个View对象.例如,如果我的模型是"Foo",则似乎有4个.cshtml文件:Foo/Create,Foo/Delete,Foo/Details和Foo/Edit.使用VisualStudio"scaffolding"帮助程序也可以.
这真的被认为是MVC的最佳实践吗?让4个类彼此相同的80-90%是错误的.当我向Foo添加一个新字段时,我需要编辑所有4个.cshtml文件.这种双重维护(四维护理?)只是让我的OO皮肤爬行.
请告诉我:是否有预期/接受的最佳实践以不同方式处理此问题?或者,如果这真的被接受为最佳实践,请告诉我为什么四维不应该让我感到不安.
我是一位相当熟练的ASP.NET/c#/ OO设计老手,但对于MVC来说还是个新手; 如果这是一个菜鸟问题,请道歉.在此先感谢您的帮助!
编辑:感谢所有的回复!我标记了最彻底的一个作为答案,但赞成所有有用的.
我正在寻找"阻力最小的路径"(尽可能减少代码更改),将当前的.NET 3.5系统更新为.NET 4.系统目前使用NHibernate 2.1.2.该版本是否可以在.NET 4下运行,还是必须作为迁移的一部分更新到NHibernate 3?
如果这个问题已在其他地方得到解答而道歉 - 由于某种原因(可能是PEBKAC)我找不到NHibernate版本的特定发行说明和兼容性说明.
是否有任何JS/CSS/jQuery魔法可以识别div中内容的最后一个可见位是否被切断,并略微增加/减少DIV的高度以防止切断文本?
我们的系统允许用户输入包含XHTML的"元素"(使用Telerik Edit控件).我们有一个ElementList页面,其中显示了所有用户输入的元素.但是,由于用户输入的XHTML可能非常大,因此在列表页面上我们只想显示每行的前3行.所以我将包含XHTML的DIV设置为等于3行文本的特定高度,并设置overflow:hidden.到现在为止还挺好.
但是,由于用户可以输入XHTML,因此可以使用填充(或以其他方式偏离标准文本高度)创建表.由于高度和溢出的组合:隐藏,这些单元格中的文本似乎是水平切片.我们的要求人不喜欢这个样子; 但当然我们不能限制最终用户可编辑的XHTML.
这是一个JSFiddle问题的例子.
这个问题不是重复的:
这个问题让我感到非常困惑 - 我希望SO社区可以帮助我!
更新:
最终,我怀疑使用HTML/JS/jQuery无法解决这个问题.实际上,您可以制作一个表(或一系列DIV),其中顶部边距逐渐增加,这样就无法避免切割其中至少一个.
感谢所有人的回复.我将其中一个作为答案,因为在我看来,这是一个特别简单/优雅的解决方法.
asp.net ×5
.net ×3
.net-4.0 ×2
asp.net-mvc ×2
jquery ×2
web-config ×2
ajax ×1
app-config ×1
asmx ×1
c# ×1
config ×1
css ×1
html ×1
javascript ×1
jqgrid ×1
jquery-ui ×1
nhibernate ×1
wcf ×1
wse ×1