【C# 实现身份验证之WCF篇(1)】教程文章相关的互联网学习教程文章

c# – 当使用实体框架作为数据访问层时,如何实现业务逻辑层?

说我有3层 第1层:WPF项目(包含:xaml,viewmodels,mvvm框架) 第2层:业务逻辑层(包含:普通c#类) 第3层:实体框架(包含:存储库/数据访问类) 当你不想将你的DAL(第3层)暴露给视图(第1层)时你如何很好地实现业务逻辑层?我很难在BLL对象和DAL实体之间来回放置值. 你能帮忙吗?解决方法:不要将所有DAL暴露给视图层,只需在所有层之间交换域对象(EF对象).结构可能类似于以下内容: >表示层——– ^> BLL ————————— |数据对象>...

C#在接口及其实现者类中使用泛型【代码】

我想创建一个适用于所有IComparable类型的接口.例如public interface SortAlgorithm<T> where T : System.IComparable<T> {List<T> Sort(List<T> input); }我希望它的实现者也是通用的,并且我在界面中提供了相同的规范.像下面的例子public class InsertionSort<T> : SortAlgorithm<T>这是我这样做的目的.我希望我的所有排序算法都适用于实现IComparable接口的所有类型.并且希望在接口中提供T是IComparable的子类的规范.但是当我这样...

c# – 具有接口约束和类实现接口的泛型类【代码】

最近我实现了一个Trie的数据结构,并决定节点可以存储不同类型的数据或者它的实现方式不同,所以我去了Node< T>.然后当我进入构建Trie的算法时,我意识到它需要更多关于Node的知识,所以我限制泛型类使用INode接口.这允许更大的灵活性,但在泛型类的上下文中感觉错误. 通用类对实现接口的类具有不同的用例.例如,List< T> – 算法可以在不依赖于相关抽象集的情况下工作.实现接口的类可能需要多态/ DI,但接口将更加专业化. 在什么情况下其...

c# – ToArrayAsync()抛出“源IQueryable未实现IAsyncEnumerable”【代码】

我在ASP.NET Core上有一个MVC项目,我的问题与IQueryable和异步相关.我在IQueryable< T>中编写了以下搜索方法:private IQueryable<InternalOrderInfo> WhereSearchTokens(IQueryable<InternalOrderInfo> query, SearchToken[] searchTokens) {if (searchTokens.Length == 0){return query;}var results = new List<InternalOrderInfo>();foreach (var searchToken in searchTokens){//search logic, intermediate results are bein...

c# – 将常规属性转换为自动实现的属性

我正在升级旧的C#代码库,并希望将常规属性转换为自动实现的属性.可以从Visual Studio完成吗?解决方法:它是possible using Resharper.你可以下载完整的functioning trial version for 30 days.

c# – 使用自动实现的属性或自己实现属性【代码】

在C#中,我们可以创建一个自动实现的属性public string MyValue{get;set;}但是,我们也可以自己创建一个属性private string _myValue; public string MyValue {get { retrun _myValue; }set { _myValue = value; } }我的问题是在哪种情况下我们应该使用auto one以及我们应该自己实施哪种情况?解决方法:至少有一个明显的案例,你不应该使用自动实现的属性:两个不同的DLL之间的任何类型的二进制序列化. 二进制序列化依赖于私有成员,并...

C# 实现http post,get

string Url = string.Format(@"http://www.baidu.com?key=abc"); //GETtry{HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(Url);req.Method = "GET";req.ContentType = "application/x-www-form-urlencoded";req.Timeout = 3000;//单位毫秒WebResponse wr = req.GetResponse();Stream rs = wr.GetResponseStream();Encoding encode = System.Text.Encoding.GetEncoding("utf-8");StreamReader rsp = new StreamReade...

c# – 重新实现继承的接口方法【代码】

我没有完全理解使用Interfaces,所以我不得不问:-) 我使用BaseClass,它实现了IBaseClass接口.这个接口只包含一个声明:public interface IBaseClass {void Refresh (); }所以我在我的Baseclass中实现了一个Refresh方法:public void Refresh (){Console.WriteLine("Refresh");}现在我想使用从这些Baseclass扩展的一些类并实现IBaseClass接口:public class ChildClass : BaseClass,IBaseClass{}但是在我的BaseClass中实现“刷新”的...

c# – 依赖注入问题 – 如何清理我的实现?【代码】

我正在使用依赖注入来模拟类,以便对依赖于它们的其他类进行单元测试:class Foo : IFoo {// production code }class MockFoo : IFoo {// mock so other classes that depend on Foo can be unit tested }class Bar {public DoSomething(){var barValue = 20;// use dependency injection to get Foo instance.DependencyInjection.Instance.Foo.ExampleMethod(barValue);} }但是,设置我的依赖注入类变得笨拙,迷宫和复杂:public cl...

在C#中实现多个IEnumebles【代码】

我有一个泛型类,Class< T>,它实现了IEnumerable< T>. T也被限制为实现IConvertable. 我也希望这个类能够假装成一个类似字符串的对象,所以我想实现IEnumerable< char>.然而,IEnumerable< T>和IEnumerable< char>碰撞 – 如果T是char,会发生什么? 有没有人对如何做到这一点有任何建议? 编辑:这里有一些澄清 – 我希望能够做到以下几点:public IEnumerator<T> GetEnumerator() {for (var i = _offset; i < _offset + _length; i++...

如何使用C#中的反射查找实现泛型抽象类的所有类?【代码】

我有一个看起来像这样的c#类public abstract class Listener<T> where T : Event {public abstract void Handle(T _event); }我将这个类扩展为这样的东西public class SendWelcomeEmail : Listener<UserWasCreated> {public override void Handle(UserWasCreated _event){//...} }我需要使用反射来查找扩展Listener的所有类<>基类. 我尝试了以下内容var listeners = AppDomain.CurrentDomain.GetAssemblies().SelectMany(assembly ...

c# – 使用Josh Smith的WPF MVVM演示应用程序实现ListView过滤器【代码】

我一直在尝试扩展Josh Smith的演示MVVM应用程序,以便更好地理解它背后的原理,并且当我尝试使用ListView在View上实现过滤器功能时,我遇到了障碍. 我花了几个小时研究和涉猎,但它只是没有用. 我的第一步是将视图中的文本框绑定到ViewModel中的属性:<TextBox Height="25" Name="txtFilter" Width="150" Text="{Binding Path=Filter, UpdateSourceTrigger=PropertyChanged}"/>这在我的VM中匹配:public string Filter{get { return th...

c# – WCF:如何在单独的项目中将实现逻辑转换为契约接口?【代码】

就像标题所说的那样,我希望将我的逻辑保存在与服务合同相关的单独项目中,这样就可以保持独立和隐藏.我已经看到它说可以做到这一点,但我找不到任何关于如何做的例子. 我将所有必要的代码移到了另一个项目中,但是当我测试它时,只有类型对客户端可见,而不是方法. 所有方法都在界面中标记为[OperationContract]. 我猜测必须有一种方法将实现逻辑专门连接到合同而不仅仅是Class:IInterface,否则,如果有2个类似的类会发生什么,例如:Cla...

c# – 我只需要实现接口的一些方法【代码】

在我的项目中有一个界面.在界面中有很多方法.我们公司的其他开发人员继承了某些类的接口并实现了我需要实现的所有方法天气.那个时候我遇到了一些错误. “不实现接口成员”.我怎么解决这个问题?例如:-public interface IComplianceRepository{IList<ComplianceModel> LoadComplianceModel(Guid userId);bool CreateCompliance(ComplianceModel complianceModel);IList<ComplianceType> LoadComplianceType();IList<ComplianceStat...

c# – 接口方法返回类型是实现接口的类【代码】

我无法理解界面.在这里搜索了类似的问题后,我想出了以下界面,用于定义所有类所需的CRUD操作:public interface IData<T> {IData<T> Select(int id);List<T> SelectMultiple();void Insert();void Update();void Delete(); }然后在我的部分类中实现:public partial class Post : IData<Post> {public IData<Post> Select(int id){MyDataContext dc = MyDataContext.Create();return dc.Posts.Single(p => p.PostID == id);}public ...