Questions tagged «c#»

C#(发音为“ See Sharp”)是由Microsoft开发的一种高级,静态类型的多范例编程语言。C#代码通常针对Microsoft的.NET系列工具和运行时,其中包括.NET Framework,.NET Core和Xamarin。使用此标记可解决有关用C#或C#正式规范编写的代码的问题。

7
客户端发送SOAP请求并接收响应
尝试创建一个C#客户端(将作为Windows服务开发),该客户端将SOAP请求发送到Web服务(并获取结果)。 从这个问题中我看到了以下代码: protected virtual WebRequest CreateRequest(ISoapMessage soapMessage) { var wr = WebRequest.Create(soapMessage.Uri); wr.ContentType = "text/xml;charset=utf-8"; wr.ContentLength = soapMessage.ContentXml.Length; wr.Headers.Add("SOAPAction", soapMessage.SoapAction); wr.Credentials = soapMessage.Credentials; wr.Method = "POST"; wr.GetRequestStream().Write(Encoding.UTF8.GetBytes(soapMessage.ContentXml), 0, soapMessage.ContentXml.Length); return wr; } public interface ISoapMessage { string Uri { get; } string ContentXml { get; } string SoapAction { get; …

2
String.Equals(a,b)如何不产生StackOverflowException?
在检查String ==运算符时,我注意到它调用String.Equals(string a, string b),这意味着它只是一个传递。 检查该String.Equals(string a, string b)方法,我发现它使用==运算符进行相等性检查。这实际上是如何工作的,并且StackOverflowException在执行诸如"x" == "x"或之类的操作时不会引起"x" == "y"? 更新:我让JetBrains知道了,他们将其作为dotPeek的关键优先事项。https://youtrack.jetbrains.com/issue/DOTP-6789 我还在ILSpy的GitHub存储库中添加了一个问题。
159 c#  .net 

9
如何获取当前用户,以及如何在MVC5中使用User类?
如何获取MVC 5中当前登录用户的ID ?我尝试了StackOverflow建议,但似乎不适用于MVC 5。 另外,将素材分配给用户的MVC 5最佳实践是什么?(例如,User应该有Items,我应该存储在用户Id的Item?我可以扩展User与类List<Item>导航属性? 我正在使用MVC模板中的“个人用户帐户”。 尝试了这些: 如何在MVC应用程序中获得当前用户? 如何在ASP.NET MVC中获取当前用户 获取登录的用户ID-这将引发以下情况: 'Membership.GetUser()'为空。

3
何时使用Xamarin.Forms和Xamarin Native?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 改善这个问题 我需要在使用Xamarin.Forms与Xamarin本机之间进行开发。 我想使用Xamarin.Forms,因为UI代码也将被共享。 那么,在Xamarin Native上使用Xamarin.Forms的技术利弊是什么?

7
在C#中引发事件的单元测试(按顺序)
我有一些引发PropertyChanged事件的代码,我希望能够对事件是否正确引发进行单元测试。 引发事件的代码就像 public class MyClass : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; protected void NotifyPropertyChanged(String info) { if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs(info)); } } public string MyProperty { set { if (_myProperty != value) { _myProperty = value; NotifyPropertyChanged("MyProperty"); } } } } 我从单元测试中的以下代码中得到了一个不错的绿色测试,它使用了委托: [TestMethod] public void …
159 c#  unit-testing  events 

13
Log4net不写入日志文件
我使用Log4net创建了一个简单的方案,但是由于消息未添加到日志文件中,所以我的附加程序似乎无法正常工作。 我将以下内容添加到web.config文件中: <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" requirePermission="false"/> </configSections> <log4net> <appender name="LogFileAppender" type="log4net.Appender.FileAppender"> <file value="D:\MyData\Desktop\LogFile.txt" /> <appendToFile value="true" /> <encoding value="utf-8" /> <layout type="log4net.Layout.SimpleLayout" /> </appender> <root> <level value="INFO" /> <appender-ref ref="LogFileAppender" /> </root> </log4net> 在全局ASAX文件中,我添加了: ILog logger = LogManager.GetLogger(typeof(MvcApplication)); 在Application_Start方法中: logger.Info("Starting the application..."); 我做错什么了?
159 c#  .net  asp.net  logging  log4net 

5
将零填充添加到字符串
如何为字符串添加“ 0”填充,以使字符串长度始终为4? 例 If input "1", 3 padding is added = 0001 If input "25", 2 padding is added = 0025 If input "301", 1 padding is added = 0301 If input "4501", 0 padding is added = 4501
159 c#  string  padding 

10
C#忽略证书错误?
在向远程Web服务发出Web服务请求期间,出现以下错误: 无法建立SSL / TLS安全通道的信任关系。---> System.Security.Authentication.AuthenticationException:根据验证过程,远程证书无效。 无论如何,有无视此错误并继续吗? 似乎远程证书未签名。 我连接到的站点是www.czebox.cz-可以随时访问该站点,并且甚至注意到浏览器也会抛出安全异常。
159 c#  .net  ssl 

28
列出字符串/整数的所有排列
对采访进行编程的一个常见任务(尽管不是我的采访经验)是获取一个字符串或整数并列出所有可能的排列。 是否有一个示例,说明了如何完成此操作以及解决此问题的逻辑? 我已经看到了一些代码片段,但是它们没有得到很好的注释/解释,因此很难遵循。


3
使用Moq确定是否调用方法
据我了解,如果我调用更高级别的方法,则可以测试是否将发生方法调用,即: public abstract class SomeClass() { public void SomeMehod() { SomeOtherMethod(); } internal abstract void SomeOtherMethod(); } 我想测试一下,如果我打电话,SomeMethod()我希望SomeOtherMethod()会被调用。 我认为这种测试可以在模拟框架中使用对吗?
159 c#  .net  unit-testing  mocking  moq 

11
如何使用Visual Studio(和/或ReSharper)从类字段生成构造函数?
我已经习惯了许多Java IDE(Eclipse,NetBeans和IntelliJ IDEA),向您提供了一个命令,用于根据类中的字段为类生成默认构造函数。 例如: public class Example { public decimal MyNumber { get; set; } public string Description { get; set; } public int SomeInteger { get; set; } // ↓↓↓ This is what I want generated ↓↓↓ public Example(decimal myNumber, string description, int someInteger) { MyNumber = myNumber; Description …

30
找不到CodeDom提供程序类型“ Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider”
这是一个使用VS2015的WebApi项目。 复制步骤: 创建一个空的WebApi项目 将构建输出路径从“ bin \”更改为“ bin \ Debug \” 跑 在将“生成输出”路径从“ bin \”更改为“ bin \ Debug \”之前,一切工作正常,实际上,除“ bin \”以外的任何输出路径均无效。 另外一点是,只要我将构建保留在“ bin \”中,就可以在任何地方都具有另一个输出路径。 请帮助提供解决方案以解决此问题。我想这会在实际部署上带来问题。

5
如何在C#中合并2个List <T>并从中删除重复值
我有两个列表,我需要将它们合并到第三个列表中,并从该列表中删除重复的值 有点难以解释,因此让我展示一个示例代码,其结果是我想要的示例,在示例中,我使用int类型而不是ResultAnalysisFileSql类。 first_list = [1,12,12,5] second_list = [12、5、7、9、1] 合并两个列表的结果应显示在此列表中:result_list = [1,12,5,7,9] 您会注意到,结果具有第一个列表,包括其两个“ 12”值,而在second_list中具有一个附加的12、1和5值。 ResultAnalysisFileSql类 [Serializable] public partial class ResultAnalysisFileSql { public string FileSql { get; set; } public string PathFileSql { get; set; } public List&lt;ErrorAnalysisSql&gt; Errors { get; set; } public List&lt;WarningAnalysisSql&gt; Warnings{ get; set; } public ResultAnalysisFileSql() { …
159 c#  list  merge  duplicates 

7
C#创建新的T()
您可以看到我正在尝试(但失败)执行以下代码: protected T GetObject() { return new T(); } 任何帮助将不胜感激。 编辑: 上下文如下。我正在使用自定义控制器类,使用标准化方法为所有控制器派生自定义控制器类。因此,在上下文中,我需要为控制器类型的对象创建一个新实例。因此,在撰写本文时,它类似于: public class GenericController&lt;T&gt; : Controller { ... protected T GetObject() { return (T)Activator.CreateInstance(ObjectType); } public ActionResult Create() { var obj = GetObject() return View(obj); } 因此,我认为在这里进行反思最容易。我同意,当然,考虑到问题的最初陈述,标记为正确的最合适答案是使用new()约束的答案。我已经解决了。
159 c#  .net  generics  c#-4.0  .net-4.0 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.