小编atc*_*way的帖子

为什么私有vs保护如何使用VB.NET在ASP.NET中创建按钮单击事件?

我从来没有想过太多的事情,但我是curiuos并且想要理解实际的推理.在使用VB.NET的 ASP.NET中,您可以通过两种不同的方式定义有线按钮单击事件(到ASP.NET服务器控件)(出于此对话的目的 - 通过按钮属性手动连接,这里没有问题) :

  1. 双击设计器中的按钮,该按钮使用Protected方法在后面的代码中生成一个事件.
  2. 在后面的代码中,从控件列表中选择按钮,然后选择它的"Click"事件.这会产生一个私有方法.

理解私人和受保护之间的区别; 这里没有问题.我只是想知道为什么根据有线连接事件如何自动处理它为该方法生成不同的访问级别的实际原因(不要猜测或推测)?

谢谢!

vb.net asp.net visual-studio

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

如何在代码中缩进#if指令?

可能重复:
如何强制缩进C#条件指令?
visual studio可以自动缩进/格式化预处理指令吗?

在下面的示例代码中有一个#if指令,但请注意缺少缩进:

                else
                {
#if DEBUG
    Debug.Print(ex.Message);
#endif                    
                    return null;
                }
Run Code Online (Sandbox Code Playgroud)

我知道对于一些纯粹的开发实践来说这可能是这样的,但老实说,在VS.NET中我并不在意,并且希望它与我的代码保持一致.有没有办法允许#指令与VS.NET中的其余代码一起自动缩进?

谢谢!

c# visual-studio

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

使用STS和WCF遇到不安全或错误安全的故障异常问题

我正在使用WIF和STS提供商(所有使用开箱即用的Microsoft代码和示例)保护的几个WCF服务.这些服务都是使用.NET 3.5构建的,并且最近都已更新到.NET 4.0.与服务关联的所有 .dll也已更新为4.0.在我更新框架版本之前,这些服务已按原样运行多年.

现在问题是当对由STS WCF服务保护的WCF服务进行调用时,在将令牌传递回调用STS保护的WCF服务的客户端应用程序之后会产生错误:

从另一方收到了无担保或不正确安全的故障.请参阅内部FaultException以获取故障代码和详细信息.

HResult -2146233087

{"在处理邮件中的安全令牌时发生错误."}

服务器堆栈跟踪:在System.ServiceModel.Channels.SecurityChannelFactory 1.SecurityRequestChannel.ProcessReply(Message reply, SecurityProtocolCorrelationState correlationState, TimeSpan timeout) at System.ServiceModel.Channels.SecurityChannelFactory1.SecurityRequestChannel.Request(消息消息,时间跨度超时)在System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.DoOperation(SecuritySessionOperation操作,目标的EndpointAddress,经由开放的,SecurityToken currentToken,时间跨度超时) System.ServiceModel处的System.ServiceModel.SecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpan超时)处于System.ServiceModel.Security上的System.ServiceModel.SecuritySessionClientSettings`1.ClientSecuritySessionChannel.OnOpen(TimeSpan timeout)的System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpan超时) .Channels.CommunicationObject.Open(时间跨度超时)在System.ServiceModel.Channels.ServiceChannel.OnOpen(时间跨度超时)
在System.ServiceModel.Channels.CommunicationObject.Open(时间跨度超时)在System.ServiceModel.Channels.ServiceChannel.CallOpenOnce.System .ServiceModel.Channels.ServiceChannel.ICallOnce.Call(ServiceChannel chan NEL,时间跨度超时)在System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(时间跨度超时,CallOnceManager级联)在System.ServiceModel.Channels.ServiceChannel.EnsureOpened(时间跨度超时)在System.ServiceModel.Channels.ServiceChannel.Call(字符串动作,布尔单向,ProxyOperationRuntime操作,对象[]项,在System.ServiceModel.Channels.ServiceChannel.Call(字符串动作,布尔单向,ProxyOperationRuntime操作对象[]奏,时间跨度超时),对象[]项,对象[]奏)在System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage包括methodCall,ProxyOperationRuntime操作)在System.ServiceModel.Channels.ServiceChannelProxy.Invoke(即时聊天消息)

在异常重新抛出[0]:在System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(即时聊天reqMsg,即时聊天retMsg)处MyProject.IMyService System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&MSGDATA,的Int32类型). GetInfo()位于c:\ Projects\Proxy.cs中的MyProject.Proxy.GetInfo():第36行

深入挖掘也表明:

InvalidSecurityToken作为InnerException.Code.Subcode.Name属性值.

所以我看了下面的内容,这些都暗示了系统上的时钟问题,但没有一个有效:

http://blogs.msdn.com/b/dhrubach/archive/2009/12/14/9936037.aspx
从另一方收到了一份不安全或不正确安全的故障.(使用SAML时)
http:// blogs. msdn.com/b/xiaowen/archive/2009/03/26/tip-add-a-clock-skew-to-prevent-some-security-faults.aspx?Redirected=true

我已经在这些服务中附加了调试器并尝试遍历代码,但我找不到罪魁祸首.有谁知道我可能会对此感到错误?

编辑:有趣的是STS服务中WIF 的艰难部分正在进行身份验证工作!我打开了日志记录并捕获了以下内容:

Service authorization succeeded.  
Service: http:// localhost:4068 /MyID/MyID.svc  
Action: http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue  
ClientIdentity: Domain\allen; S-1-5-21-1234567890-1234567895-0987654321-45678 
AuthorizationContext: uuid-22fad22a-22fe-123c-9b69-a22c23f569ce-99 
ActivityId: <null>  
ServiceAuthorizationManager: <default>
Run Code Online (Sandbox Code Playgroud)

我还打开了WCF日志记录.config来查看.svc文件,并且它们没有产生任何错误信息,指出了问题.这就像STS说:"嘿,你经过身份验证,我们通过你并生成令牌,现在我们已经完成了!" 看来调用客户端不喜欢令牌.然而,这已经成功了,直到我改变了框架版本.根据我的知识,从3.5 - > 4.0没有任何重大的WIF变化,而是在4.5中将WIF集成到框架中的重大变化.

因此,所有授权都有效,只是客户端认为令牌被接受存在问题?

wcf wif sts-securitytokenservice

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

使用传输安全性时是否需要WCF的SSL?

好吧,我可能用WCF配置在杂草中走得太远,无法通过树看到森林,所以我想检查安全性.

我有(2)在WCF服务中公开的绑定,用于客户端的选项消耗:netTcpBinding和wsHttpBinding(既精细又有效).我都配置了默认值:clientCredentialType ="Windows".我将wsHttpBinding配置为使用SSL证书并通过https公开端点(我想要这个),并且还为netTcpBinding配置了SSL证书以使用SSL over TCP(我也想要这样).

这是我不断获取混合信息的地方.显然,"传输"安全性是非常安全的.这是否意味着我根本不是需要一个SSL证书,然后,如果我要保护的传输层?

.net wcf

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

HTML5如何处理能够像Silverlight一样运行.NET托管代码呢?

好的,我正处于理解HTML5的初期阶段,所以请耐心等待.我理解HTML5是视频,流媒体,交互性等的明显未来,毫无疑问.但Silverlight(从版本2开始)的一大优点是能够在客户端上运行.NET托管代码.是的,它需要Silverlight插件,但除此之外能够运行托管代码是一个强大的功能.使用WCF返回服务器很简单,所以我喜欢这种能力,并且由于其丰富的功能,我在ASP.NET页面上嵌入了几个Silverlight控件.

随着所有关于HTML5的讨论将Silverlight推到一边(甚至直接或间接地从MSFT),HTML5是否能够促进像Silverlight一样从Web上运行托管.NET代码客户端?

谢谢!

.net silverlight html5

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

如何从强类型视图隐藏实体框架实体属性?

我在我的ASP.NET MVC 4.0应用程序中使用Entity Framework,我想知道如何防止或隐藏我的实体中的字段在强类型视图中生成?现在,在我不想要的视图上生成了几个主键字段和时间戳字段.

我知道将属性设置internal为与public工作相反,但我不确定这将具有的总下游效果.我更喜欢在属性上使用数据注释,但我尝试过的是阻止Controller脚手架或将它们作为隐藏字段.我更喜欢让他们保持公开,但不是在强类型视图中生成.

编辑:

要生成强类型视图,请在Visual Studio中添加新的"视图",然后在对话框中选择要对其进行建模的类.这反过来将创建一个视图,其中包含类的属性所表示的所有控件.例如,LastName创建一个字段如下:

@Html.EditorFor(model => model.FirstName)
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc entity-framework data-annotations

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

在Entity Framework中使用我自己的域模型对象和.edmx

我有一个域模型体系结构,其中我的域/业务对象是基于问题域创建的,并且独立于物理数据模型或持久性结构的任何知识.到目前为止,我已经走上正轨,因为它完全可以接受,并且通常情况是域模型和数据模型之间存在阻抗不匹配.一个DBA创建的数据库获取数据,他们需要的,但它并不封装应用的整个域模型或设计.

结果 - 我有自己的一组域模型对象.但是,所有需要持久存储的字段确实存在于我的域模型中的某个位置,但不一定是我自动生成的.edmx POCO实体拥有它们的形状.所以我拥有所有数据,它与完全形状完全不同,就像创建自动生成的POCO实体的表一样.

我已经看过关于这个主题的一些帖子,比如将POCO实体转换为业务实体,使用现有域模型实体框架4 转换为如下所示的语句:

"使用与域类相同的名称在实体数据模型中创建实体.实体属性也应具有与域类中相同的名称和类型"

什么!?没办法,为什么我必须让我的域模型重新变形为完全建模在数据库中的数据模型/表结构之后的POCO ?例如 - 在我有5个给定属性的情况下,2可能在类'A'中,3在类'B'中,而自动生成的POCO类在其自己的类'A'中具有全部5.

这就是整点,我想要分离我的对象模型和数据模型,但仍然使用像EF 5.0这样的ORM来映射它们.我不想在数据模型中创建和形成这样命名的类和属性.

现在我在EF 5.0的.edmx正在生成POCO类的我,但我的问题是,如何化解这些并重新连接一切,我的包含所有数据域对象只是在不同的形状?

顺便提一下,使用Code First方法提出的任何解决方案都不是一种选择,所以不要提供.我需要一些使用EF5的指导或教程(最好)(如果可能,因为EF4示例总是从ObjectContext继承POCO),并将我自己的业务对象连接到.edmx.

任何帮助或指导表示赞赏,谢谢!

domain-driven-design entity-framework poco

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

为什么"复制到输出目录"选项的措辞会在不同位置之间发生变化?

VS.NET中的解决方案资源管理器与.csproj文件中的预计值之间的配置值措辞不一致.在Solution Explorer一个.config或依赖文件将有多种选择Copy To Output Directory影响其构建和部署特性属性.

Copy To Output Directory下拉列表中,我选择了.config文件的选项:Copy if newer.但是在.csproj文件中它的设置PreserveNewest如下所示:

<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
Run Code Online (Sandbox Code Playgroud)

我想可以得出结论,因为它是(2)不同的地方,术语不同是有道理的.我也可以看到XML文件中不允许"空格"的位置,但我仍然希望看到类似下面的内容.

<CopyToOutputDirectory>CopyIfNewer</CopyToOutputDirectory>
Run Code Online (Sandbox Code Playgroud)

是否有某些地方在MSDN中定义了这些"友好名称"如何映射到.csproj文件中的物理配置值?

msbuild configuration csproj visual-studio

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

是否可以使ng-grid响应?

我正在使用Angular.js的'ng-grid'数据网格,并试图使其行为响应.当我调整屏幕大小时,我更喜欢网格列自动堆叠,而不是保持网格固定宽度.

我发现一些链接提到了一个已经废弃的东西ngGridLayoutPlugin,这些都导致了GitHub的死胡同.我也看过其他网格,angular-deckgrid但我对改变网格不感兴趣.

反正有ng-grid反应吗?

angularjs ng-grid

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

dotPeek问题调试第三方.dll

我使用dotPeek v1.2with VS2013 Update 3尝试调试引用的C#.dll的代码.我已经按照从下面的教程的所有方向:使用dotPeek作为一个符号服务器(http://localhost:33417/设置为符号的位置等),说实话,我已经读过了一堆像文章这样这个,通过所有必要的设置梳理和调试第三方非骨架的还真没见过1个有效的解决方案.dll文件,所以我不相信这是一个完全正常工作的产品,从这个方面.

Regardelss,dotPeek应该允许一旦符号服务器开始步入并根据他们的文档调试来自VSNET的第三方程序集的代码.我知道为dotPeek选择哪些.dll,因为我从Debug - > Windows - > Modules检查了它们的路径.

我碰巧ReSharper还安装了允许我在右键单击一行代码并选择"转到声明"时进行反编译.问题是,符号服务器似乎没有做任何事情来协助在调试时提供代码.相反,ReSharper提供的反编译源似乎是VS.NET想要进入的.问题是我总是得到以下错误:

源文件:C:\ Users\username\AppData\Local\JetBrains\ReSharper\v8.2\SolutionCaches_ReSharper.Meijer.Ecommerce.Nav.WebAppServices.-382002776\Decompiler\decompiler\53\66e7ccc2\MyClass.cs

模块:C:\ Projects\MyProject\bin\Debug

进程:[24808] vstest.executionengine.x86.exe

源文件与构建模块时不同.您希望调试器还能使用它吗?

如果我说'是'并且调试器中的步骤似乎位于文件中不存在且不同步的行上.这是有道理的,因为它.cs从"源文件"位置显示类,但从.dll加载.dll/bin/Debug

但是,我不明白为什么会发生这种情况,因为dotPeek应该提供加载的符号,/bin/Debug而不是试图进入任何反编译源ReSharper.

我该如何配置,从而VS2103实际调试符号和代码担任了dotPeek

debugging resharper visual-studio dotpeek

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