摘要: 1、通过docker运行consul,至少启动三个server,否则无法推选出Leader,导致服务无法启动。 阅读全文
posted @ 2021-05-14 10:32 暗月随风 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 1、早期版本的ocelot配置文件的根节点是ReRounte,如果使用最新版本,却使用了老的配置文件,会导致网关无法起作用。 2、关于配置文件,不同版本存在不同配置格式,需要从官方文档上查看最新配置信息。 阅读全文
posted @ 2021-05-14 10:31 暗月随风 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 已经好长时间没有补充自己的技术储备了,今天更新。 开源网站:1、nget微软官方的组件网站2、github,世界流行的开源网站。3、oschina,听名字应该是国内的,个人感觉是比较不错的。 前端技术:bootstrap orm:除了常用的ef,还有dapper 阅读全文
posted @ 2016-08-19 19:10 暗月随风 阅读(125) 评论(0) 推荐(0) 编辑
摘要: string是恒定的(immutable)和其他类型比较,string最为显著的一个特点就是它具有恒定不变性:我们一旦创建了一个string,在managed heap 上为他分配了一块连续的内存空间,我们将不能以任何方式对这个string进行修改使之变长、变短、改变格式。所有对这个string进行各项操作(比如调用ToUpper获得大写格式的string)而返回的string,实际上另一个重新创建的string,其本身并不会产生任何变化。String的恒定性具有很多的好处,它首先保证了对于一个既定string的任意操作不会造成对其的改变,同时还意味着我们不用考虑操作string时候出现的线程 阅读全文
posted @ 2011-04-08 17:21 暗月随风 阅读(363) 评论(0) 推荐(0) 编辑
摘要: 设置位置方法 private void SetPosition(Ellipse ellipse, double offset, double posOffSet, double step) { ellipse.SetValue(Canvas.LeftProperty, 50.0 + Math.Sin(offset + posOffSet * step) * 50.0); ellipse.SetValue(Canvas.TopProperty, 50 + Math.Cos(offset + posOffSet * step) * 50.0); }调用 const double offset = 阅读全文
posted @ 2011-04-08 14:55 暗月随风 阅读(375) 评论(0) 推荐(0) 编辑
摘要: View Code private childItem FindVisualChild<childItem>(DependencyObject obj) where childItem : DependencyObject { for (int i = 0; i < VisualTreeHelper.GetChildrenCount(obj); i++) { DependencyObject child = VisualTreeHelper.GetChild(obj, i); if (child != null && child is childItem) r 阅读全文
posted @ 2011-04-08 11:55 暗月随风 阅读(2173) 评论(0) 推荐(0) 编辑
摘要: 3D 图形基础生成3D图形的基本思想是能得到一个物体的三维立体模型(model)。由于我们的屏幕只有二维,因而我们定义了一个用于给物体拍照的照相机(Camera)。拍到的照片其实是物体到一个平坦表面的投影。这个投影由3D渲染引擎渲染成位图。引擎通过计算所有光源对3D空间中物体的投影面反射的光量,来决定位图中每个像素点的颜色。物体的每一个表面都有一种材质(material)和一个画刷(brush)。材质定义了一个具体角度的光的反射量,而画刷定义了表面的颜色。画刷可以是一种单纯的颜色,也可以是渐变的,甚至可以是一幅图片,这些称为纹理(texture)。一个三角形的世界 在3D图形的世界里,所有物体 阅读全文
posted @ 2011-04-08 11:52 暗月随风 阅读(4037) 评论(0) 推荐(1) 编辑
摘要: ist<T>与ObservableCollection<T>的用法基本上是一样的。区别:list<T>:当T继承于INotifyPropertyChanged时,如果list<T>中的属性发生改变,则通知UI属性值已发生改变。但当list<T>添加一项时,list<T>就无法通知前端UI了(此时,ObservableCollection<T>闪亮登场)。ObservableCollection<T>:当ObservableCollection<T>添加一行时,会自动通知绑定该Observ 阅读全文
posted @ 2011-04-08 11:31 暗月随风 阅读(1023) 评论(0) 推荐(0) 编辑
摘要: View Code public class Student : INotifyPropertyChanged { private string studentID; public string StudentID { get { return studentID; } set { studentID = value; NotifyPropertyChange("StudentID"); } } private string studentName; public string StudentName { get { return studentName; } set { 阅读全文
posted @ 2011-04-08 11:26 暗月随风 阅读(1197) 评论(0) 推荐(0) 编辑
摘要: View Code this.button1.Content = "正在计算"; Action action = new Action(() => { System.Threading.Thread.Sleep(3000); this.Dispatcher.BeginInvoke(new Action(() => { this.button1.Content = "计算完毕"; }), System.Windows.Threading.DispatcherPriority.SystemIdle, null); }); action.Begin 阅读全文
posted @ 2011-04-07 16:48 暗月随风 阅读(2623) 评论(0) 推荐(0) 编辑