V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  gowk  ›  全部回复第 3 页 / 共 57 页
回复总数  1128
1  2  3  4  5  6  7  8  9  10 ... 57  
虽然没用过 Furion 但是做为 .neter 一直在关注这个框架。商业化无可厚非,但是这种套路挺恶心人的,也损害了国内开源项目的声誉。

贴几个评论大家一起讨论讨论:

陈钇蒙 2023-11-30 19:53
管你有什么大道理, 你确实违反了你用的开源协议 mit 协议, 说再多都没有用, 你搞的就不是开源这种东西

魔力猫 2023-12-01 09:50
作者表示想不通?绑匪觉得绑票拿钱,天经地义,我们更想不通。如果不把你骂死,始作俑者,其无后呼?大家都这么玩,谁还敢用开源?特别是国内开源!你不就是仗着国内绝大多数用户,不愿意花钱跟你打官司么。我要正好是项目技术负责人,脑子昏聩,把你的框架引入了项目,结果现在被绑了,咋办?和老板说,咱们被勒索了?苛刻点的老板,我怕不是马上卷铺盖滚蛋!还不是只能含泪自掏腰包,找你买文档,赎肉票?!作者洋洋得意的三千多文档用户,有多少不是这么来的?!

思北谢 Special 2023-12-02 10:36
开始用 MIT 完全不限制商用这个宽松协议,忽悠大家用上,很多程序员冒着被质疑,去说服公司用,如果你是 GPL 有多少敢用?而一旦大家用上了,轻易更换代价很大,这时候封闭文档收费,完全撕毁 MIT 协议,这么玩,其实是损害了所有国产开源软件的信誉度,所有国产开源软件的同仁都应该出来抵制,在社会里,大家要遵守一些底线,当有人突破了底线开始赚钱的时候,其实是损害了同行的信誉度,而那些守规矩的人将更加难以生存,当有人再想以 MIT 协议推出开源软件的时候,大家就会说:国产的软件用 MIT 协议你也敢信?
151 天前
回复了 pccilipp 创建的主题 MacBook Pro 把老的 intel mac 挂某鱼,居然无人问津。
你可以试试小红书出
154 天前
回复了 GeekGao 创建的主题 Python Python is Easy. Go is Simple. Simple != Easy.
看作者介绍,他的主要技术栈是 Java+Go+Svelte
156 天前
回复了 Flourite 创建的主题 Go 编程语言 go 语言用起来好操蛋
@gongquanlin #102 ts 类型体操写起来会爽? github 上面有没有推荐的 ts 库,我学习一下
157 天前
回复了 Flourite 创建的主题 Go 编程语言 go 语言用起来好操蛋
159 天前
回复了 cyhone 创建的主题 Go 编程语言 剖析 Golang Bigcache 的极致性能优化
感谢 OP 分享,文章深入浅出,结构清晰,语言流畅,让我对 bigcache 有了一个清晰的认识
推荐下 Mithril.js
161 天前
回复了 mangojiji 创建的主题 数据库 Mybatis 到底是或不是 ORM?为什么?
DSL 纯粹是多此一举,失去了 SQL 的灵活,又增加了认知负担,得不偿失,SQL builder 或者 ORM 专注自己的领域就好了,do one thing and do it well ,Mybatis 真的就是一个 Mapper 而已,用起来还不错,就是业务逻辑复杂改起来就很啰嗦,Gorm ent 之流也能凑合用,但是都没有 EF ,Active Record ,Eloquent ,还有 node 世界的某些好用。真的感慨 Java 世界竟然没有一个顺手的 ORM ,JPA 太重,不灵活,也可能是我菜,所以干脆连笨重啰嗦的 Java 一并抛弃,拥抱 .NET ,EF 自不必说,甚至连国产的 SqlSugar 都可圈可点,用起来很舒服。

查询语法:
var exp = Expressionable.Create<Supplier, SysUser>();
exp.AndIF(dto.SupName.IsNotEmpty(), (t, u) => t.SupName.Contains(dto.SupName));
exp.AndIF(dto.CreditCode.IsNotEmpty(), (t, u) => t.CreditCode.Contains(dto.CreditCode));
exp.AndIF(dto.Address.IsNotEmpty(), (t, u) => t.Address.Contains(dto.Address));
exp.AndIF(dto.DetailAdmissionType.IsNotEmpty(), (t, u) => t.DetailAdmissionType.Contains(dto.DetailAdmissionType));
exp.AndIF(dto.Leader.IsNotEmpty(), (t, u) => t.Leader.Contains(dto.Leader));
exp.AndIF(dto.AdmissionTerm.HasValue, (t, u) => (int)t.AdmissionTerm == dto.AdmissionTerm);
exp.AndIF(dto.StartNumber.HasValue, (t, u) => t.RegCapitalSubscribed >= dto.StartNumber);
exp.AndIF(dto.EndNumber.HasValue, (t, u) => t.RegCapitalSubscribed <= dto.EndNumber);
exp.AndIF(dto.DeptId.HasValue, (t, u) => u.DeptId == dto.DeptId);
exp.AndIF(dto.AdmissionType.HasValue, (t, u) => t.AdmissionType == dto.AdmissionType);
exp.AndIF(dto.CompanyType.HasValue, (t, u) => t.CompanyType == dto.CompanyType);
exp.AndIF(dto.BeginTime.HasValue, (t, u) => t.CreateTime >= dto.BeginTime);
exp.AndIF(dto.EndTime.HasValue, (t, u) => t.CreateTime <= dto.EndTime);

var result = _supplierService.Queryable()
.InnerJoin<SysUser>((t, u) => t.CreateBy == u.UserId)
.InnerJoin<SysDept>((t, u, d) => u.DeptId == d.DeptId)
.LeftJoin<SupplierInvoice>((t, u, d, si) => t.Id == si.SupId)
.LeftJoin<SupplierChange>((t, u, d, si, ch) => t.Id == ch.SupId && ch.MostRecent)
.Where(exp.ToExpression())
.OrderByDescending(t => t.Id)
.Select((t, u, d, si, ch) => new SupplierVo
{
Id = t.Id.SelectAll(),
DeptName = d.DeptName,
NickName = u.NickName,
InvoiceStatus = si.Status,
ChangeStatus = ch.Status,
})
.ToPage(dto);

int count = DB.Queryable<T>().ClearFilter()
.InnerJoin<SysUser>((table, usr) => table.CreateBy == usr.UserId)
.InnerJoin<SysDept>((table, usr, dept) => usr.DeptId == dept.DeptId)
.Where(table => table.Id == Record.TableId)
.WhereIF(transition.Condition.IsNotEmpty(), transition.Condition, parameters)
.Count();

根据指定条件更新指定列:
Update(new SysUser(){ Status = 1 }, it => new { it.Status }, f => f.Userid == 1));
Update(w => w.NoticeId == model.NoticeId, it => new SysNotice(){ Update_time = DateTime.Now, Title = "通知标题" });

另外还有不计其数的 CRUD 重载方法,覆盖了全部使用场景,开发效率很高
@wuzhanggui #2 可以,后台管理真的没必要上 ts 全是类型体操 脱裤子放屁 写起来烦的一批
寄蜉蝣于天地,渺沧海之一粟。哀吾生之须臾,羡长江之无穷。
C#
为什么我只使用 DTO ,不管其他“O”? https://mp.weixin.qq.com/s/mhl6SVHZvNp6BeqfeupCQw
@devliu1 #14 2033 年会是什么样子,中国人登月了? AI 主导人类日常生活,产生深刻变革?好期待
169 天前
回复了 hez2010 创建的主题 .NET .NET 8 发布正式版了
很好,从昨天就开始关注,今天把几个生产的 .NET 7 应用升级到 .NET 8 了,全部跑在 Docker under CentOS
支持一下
176 天前
回复了 Tiller 创建的主题 程序员 移动 H5 脚手架求推荐
同求,跟 OP 一样的需求~
178 天前
回复了 mxiangyu 创建的主题 Java Java 行情
不觉得写 Java 很恶心嘛,来卷 .NET 吧
180 天前
回复了 williamshan 创建的主题 程序员 Java 转 GO 还是 Rust
@liuxingdeyu #16 k8s 起初是 Java 实现的,后来才转译到 Go ,所以其风格带有浓烈的 Java 味道,不是很 idiomatic ,我觉得没必要细读,对你感兴趣的包粗读即可
1  2  3  4  5  6  7  8  9  10 ... 57  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1337 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 49ms · UTC 16:53 · PVG 00:53 · LAX 09:53 · JFK 12:53
Developed with CodeLauncher
♥ Do have faith in what you're doing.