【c# – 确定对象的类型】教程文章相关的互联网学习教程文章

c# – WPF两个Line对象的交点坐标【代码】

我在C#WPF中有两个Line对象,我正在尝试构造一个方法来计算线相交的坐标(如果有的话).在让自己头疼提醒自己高中数学这样做之后,我无法弄清楚如何将其映射到编程格式 – 任何人都知道如何做到这一点? 非常感谢,贝基解决方法:我想你的线对象是由两点组成的.你应该做的是得到两条线的方程. 那么你应该解决以下等式: equation-line1 = equation-line2 计算一条线的斜率:float _slope = 1e+10;if ((p2.x - p1.x) != 0)_slope = (p2.y ...

c# – 数据绑定到对象 – 如何更新对象/绑定?【代码】

我有一个文本框并使用数据绑定到一个对象.这很好,直到我尝试选择一个新产品:product = new Product(id); textbox.DataBindings.Add("Text", product, "ProductName");// After user action: product = new Product(newId); // <- the textbox isn't updated产品更新后,是否必须清除数据绑定并再次设置?解决方法:简而言之:是的,您必须重新建立DataBinding,因为TextBox具有对旧对象的引用. 但为了使其更加健壮,您应该为DataBindin...

c# – ItemsControl中的WPF中的可拖动对象?【代码】

我希望能够实现带有可拖动项目的ItemsControl. ItemsControl的原因是我可以在后台绑定到我的ViewModel. 我尝试在画布中使用Thumb控件,它工作得很完美,除非我将它粘在ItemsControl中它就会停止工作.这是我尝试过的:<ItemsControl ItemsSource="{Binding MyItems}"><ItemsControl.ItemTemplate><DataTemplate><Thumb Canvas.Left="0" Canvas.Top="0" Width="50" Height="50" DragDelta="MyThumb_DragDelta"/></DataTemplate></Items...

两个对同一对象的引用的不同属性值(C#)【代码】

我试图在操作FlowDocument的应用程序中追踪一个非常难以捉摸的错误.我在下面连续三行显示调试代码及其输出:Debug.Assert(ReferenceEquals(document1, document2)); Debug.WriteLine(document1.Blocks.Count); // 1 Debug.WriteLine(document2.Blocks.Count); // 3任何人都可以帮助我理解对同一对象的两个引用如何对给定属性具有不同的值?或者我错过了ReferenceEquals的工作方式? 谢谢, 蒂姆 编辑: 如果我将断言更改为if块,则调...

c# – 无法使用值[MinimalLock]在对象[log4net.Appender.RollingFileAppender]上设置属性[lockingModel]【代码】

我在我的C#应用??程序中收到此错误.我使用log4net作为日志记录工具. 这是我的app.config文件:<configuration><configSections><section name="log4net" type ="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/></configSections><log4net><root><level value="ALL" /><appender-ref ref="myLogger" /></root><appender name="myLogger" type="log4net.Appender.RollingFileAppender,log4net"><param name="File" va...

c# – 单步执行.NET Class包装的VB6 COM对象

我有一个由.NET类包装的VB6对象.据我所知,只需运行VB6库并在所需位置插入断点即可逐步执行VB6对象. 然而,这似乎并不适用于我的情况.我试图重新编译VB6对象并在我的.NET项目中重新引用它,但这似乎没有帮助. 我从哪里开始?有没有办法将Debugger.Launch()等效插入到VB6项目中?任何帮助,将不胜感激!!解决方法:从robgruen’s blog起:If you are using interop to call into a VB6 ActiveX dll or exe and youneed to debug your VB...

c# – String.IndexOf的IList版本(查找子字符串’,而不仅仅是单个对象)【代码】

我正在寻找List< T> .IndexOf(List< T>)的实现.我只在.NET类库中找到了List<< T> .IndexOf(T). 我有一个List longList和一个List possibleSubList.我想知道是否可以在longList中找到可能的子列表作为子串,如果是,则将索引转换为longList. 这与System.String.IndexOf基本相同.任何人都知道该怎么称呼它或者它是否有良好的实现? 伪代码示例: {1,2,3,9,8,7} .IndexOf({3,9,8})= 2 {1,2,3,9,8,7} .IndexOf({1,2,3,9,8,7})= 0 ...

c# – 在大型依赖对象图上注入Mocks【代码】

对于我想要测试的对象,我有一个相当重要的依赖图.解决我的依赖关系而不必在任何地方注册模拟的最简单方法是什么? 例如,我有一个这样的依赖图:PublicApiApiServiceAccountingFacadeBillingServiceBillingValidationBillingRepositoryUserServiceUserRepository我想测试PublicApi.CreateUser(),我想让它运行所有代码,但我想模拟存储库,所以我不必向数据库写任何东西.我应该只使用DI容器并注册我的所有服务,用mocks替换存储库,然后解...

为Json对象生成的C#类的优点和缺点【代码】

我有Json示例,我需要将其序列化为C#对象.我决定为此目的利用Json.Net库.另外我需要有代表这个Json的C#类.创建类可以使用Json C# class generator.我们有两个选项. “创建属性”和生成的类将如下所示:public class Address {private JObject __jobject;public Address(JObject obj){this.__jobject = obj;}public string street_address{get{return JsonClassHelper.ReadString(JsonClassHelper.GetJToken<JValue>(__jobject, "str...

c# – 将DataTable转换为强类型对象的列表【代码】

我正在尝试编写一个将DataTable转换为强类型对象列表的泛型方法. 我到目前为止使用的代码是……public List<T> ImportTable<T>(String fileName, String table) {//Establish Connection to Access Database Filevar mdbData = new ConnectToAccess(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\ACCESS\" + fileName + ".mdb;");var tableData = new List<T>();foreach (DataRow row in mdbData.GetData("SELECT * FROM " +...

c# – 如果一个对象已被处理掉,是否会抑制gc终结器保存一段时间?【代码】

垃圾收集可能会成为一个耗时的过程.在这方面,GC往往只在必要时才起作用.如果已经处理了一个物体,以帮助节省时间并帮助GC,那么GC的终结器是否应被抑制?using(var sO = new someObject()) {//work with object }public class someObject : IDisposable {internal Stream someResource;internal Context someContext;public void Dispose(){someContext.Dispose();someResource.Dispose();//A: does suppressing the GC finalizer he...

c# – 将一个对象属性值转移到另一个对象属性值【代码】

最重要的是,我知道AutoMapper,我不想使用它.因为我正在学习C#而我想深入了解它.所以我想尝试自己做这个问题(下面解释). 但是,我正在尝试创建一个属性复制器来处理一种类型属性的值到另一种属性,如果该属性具有相同的名称和类型,并且可以从源中读取并在目标中可写.我正在使用type.GetProperties()方法.采样方法如下:static void Transfer(object source, object target) {var sourceType = source.GetType();var targetType = targ...

c# – 使用ValueInjecter展平包含可空类型的对象【代码】

我正在尝试使用ValueInjector来展平一个类,并让它也可以将值从Nullable< int>复制到int. 例如,给出以下(人为)课程:class CustomerObject {public int CustomerID { get; set; }public string CustomerName { get; set; }public OrderObject OrderOne { get; set; } }class OrderObject {public int OrderID { get; set; }public string OrderName { get; set; } }class CustomerDTO {public int? CustomerID { get; set; }public ...

c# – WCF是否在发送和接收的对象上调用dispose?【代码】

我们有一个使用流传递大型对象的合同.服务和消息合同归结为类似的东西.[ServiceContract] public interface IData {[OperationContract]Item Get(ItemRequest request);[OperationContract]void Put(Item request); }[MessageContract] public class Item: IDisposable {[MessageBodyMember(Order = 1)]public Stream FileByteStream;public void Dispose() {...} }Item类提供了Disposable模式的标准实现.我的问题是WCF调用Item类的...

C#调用作为接口传递的对象的内部方法【代码】

我有一个接口IFoo定义一些函数,一个抽象类FooBase实现IFoo和一些内部函数,以及几个类Foo派生自FooBase.我还有一个类Bar,它应该从FooBase调用一个方法,但是将它的参数作为IFoo传递.所以一切看起来像这样:public interface IFoo {// Some methods }public abstract class FooBase : IFoo {// Methods from IFoointernal TInternalType SomeMethod(); }public class Foo1 : FooBase {// ... }public class Bar {public void DoSometh...