From 47fae31f63fa081cddab80e57c4bd3e451c662b1 Mon Sep 17 00:00:00 2001 From: Stef Heyenrath Date: Fri, 13 Jun 2025 07:51:30 +0200 Subject: [PATCH] add sponsor --- PackageReadme.md | 26 ++++++++++++++++-- README.md | 15 ++++++++-- resources/icon_32x32.png | Bin 0 -> 1798 bytes .../ProxyInterfaceSourceGenerator.csproj | 2 +- 4 files changed, 36 insertions(+), 7 deletions(-) create mode 100644 resources/icon_32x32.png diff --git a/PackageReadme.md b/PackageReadme.md index 0d61f17..fafe30a 100644 --- a/PackageReadme.md +++ b/PackageReadme.md @@ -1,4 +1,15 @@ -# Usage +## ProxyInterfaceGenerator +This project uses Source Generation to generate an interface and a Proxy class for classes. +This makes it possible to wrap external classes which do not have an interface, in a Proxy class which makes it easier to Mock and use DI. + +It supports: +- properties +- methods +- events +- implicit and explicit operators + + +### Info **Given: an external existing class which does not implement an interface** ``` c# @@ -60,9 +71,18 @@ public class PersonProxy : IPerson } ``` -## Use it +### Use it ``` c# IPerson p = new PersonProxy(new Person()); p.Name = "test"; p.HelloWorld("stef"); -``` \ No newline at end of file +``` + + +### Sponsors + +[Entity Framework Extensions](https://entityframework-extensions.net/?utm_source=StefH) and [Dapper Plus](https://dapper-plus.net/?utm_source=StefH) are major sponsors and proud to contribute to the development of **ProxyInterfaceSourceGenerator**. + +[![Entity Framework Extensions](https://raw.githubusercontent.com/StefH/resources/main/sponsor/entity-framework-extensions-sponsor.png)](https://entityframework-extensions.net/bulk-insert?utm_source=StefH) + +[![Dapper Plus](https://raw.githubusercontent.com/StefH/resources/main/sponsor/dapper-plus-sponsor.png)](https://dapper-plus.net/bulk-insert?utm_source=StefH) \ No newline at end of file diff --git a/README.md b/README.md index 459ddd1..d325c04 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ProxyInterfaceGenerator +# ![icon](./resources/icon_32x32.png) ProxyInterfaceGenerator This project uses Source Generation to generate an interface and a Proxy class for classes. This makes it possible to wrap external classes which do not have an interface, in a Proxy class which makes it easier to Mock and use DI. @@ -8,7 +8,7 @@ It supports: - events - implicit and explicit operators -## NuGet +## 📦 NuGet [![NuGet Badge](https://img.shields.io/nuget/v/ProxyInterfaceGenerator)](https://www.nuget.org/packages/ProxyInterfaceGenerator) ## Usage @@ -136,5 +136,14 @@ public partial interface IAddress } ``` -# References +## 📚 References - https://route2roslyn.netlify.app/symbols-for-dummies/ + + +## Sponsors + +[Entity Framework Extensions](https://entityframework-extensions.net/?utm_source=StefH) and [Dapper Plus](https://dapper-plus.net/?utm_source=StefH) are major sponsors and proud to contribute to the development of **ProxyInterfaceSourceGenerator**. + +[![Entity Framework Extensions](https://raw.githubusercontent.com/StefH/resources/main/sponsor/entity-framework-extensions-sponsor.png)](https://entityframework-extensions.net/bulk-insert?utm_source=StefH) + +[![Dapper Plus](https://raw.githubusercontent.com/StefH/resources/main/sponsor/dapper-plus-sponsor.png)](https://dapper-plus.net/bulk-insert?utm_source=StefH) \ No newline at end of file diff --git a/resources/icon_32x32.png b/resources/icon_32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..19135196cf937e2d1615ecda5685dc686f3a3cba GIT binary patch literal 1798 zcmV+h2l@DkP)K9kV{~Ug~#{n*0>?+*o1^8PyWB(_y6zvy!ZEWI5)#D zKfhp1UY>C|A;M@hzIek4C=^L5p-=<{u{hymdb;l3>!vI>H+R&PYXX6AZ)|KF7~>J2(mK_83>T;i^8f=_*^B57gl3cm>a8Jb_bQ)-l##^ zJSXN&%Es)`282CsL__T+$Q80KgCTR$un5HQDF*a(-f3FcQl*cI4^Uw=4(pN{>C z_R3C}$RhAS6^>RU3Cob4e2I}V~SyAgXnK7>qdO)wPRs*OlX z)1IO*>hya3)N6^mmSwOgL4-End$7G;hYEQ!E?(%yd!8N0nO4>tiUn@uJYS9$UnkC- zK8J6<{xNv{@Ph-Gb+-WtTqnGqM#RL%u!ePtD(ay@5uohNi;m{PVz!{gM%K?Nhrehu zy1OpHtKER&Mb*8D_j(PI=hz`#V#lHV$54=5k3;*8LHVW=%O5MiVooj^sshv}l3By* zCb?4w>wz3rLJFkTIdON}66hgnO0&8ojBzbYHC-e{omyp@n+4n1zsw8d<_n@QHiRPkrgSCI+=TrFZ z(2potQ3tnj9embzA-JmuwWcdZlva}+%1@E`+MRnmuY}>FK%Q-nH z64#=}U5|KvoZ+97z3{(hMLdsZ%+JrqCf8QvKV5;+mOu$77C9lAXo26;j%1Cxd*#ZEDOZzA^QDSHvX4A7@m~o@rBZhkHwymx7F5aC1?yh- zqyzjriy(c>jKt{{NFVJb!md2dDy-4_vBv2_G<8C1=X04HlgTtnCX?q;XB4HTYIW4& z!Db9qMl+S@TXbDbV|`$f(hH9e%abuNv25C*y>>hD=T|}UfEmJjiXpmpAOxd|pnj$l z>+9Pf5b=YvfQ0&(EVVj0oGE4H&A|2;0frD6sWj1ZMKb2hro}Gy@QTO?xXV3gq={!s zt%qIb8;JBq*fjN6>k5EQONfe&4hi=%S$4a943YVb$zlZP{wu;xfk4n5T9eBa+^ZbD z@)sv2%FffnM^tK+wxy*-V6)mj$<56J9mje>_r^S9Ph~}ANpo{kgh(uQQ|5P*(E8r7 zo^hL6tyZwf%1Du-%8rhX5p0jDZ7Ho^>!%bJ_8F8 zkIy&ue@Cx3OioTt8QFJwGWK(KmqwF1pdS#4oy-gDWJRGmKd2HVw)&7zYO|MgI^Dye zJ@VMNfr*?bV~W|c;cx`KKvq9XM9(utwD%#E=ZxZF(*!akD`W_Je#m2+l+UA+^4dNtL+OgoaeG~BXlz` zg`w;xGH3fdU>%ZjO1S&Tt-F~p3Qc5aoleJXY>mhjv;T6re1S%znL%Xc5Q(5tB5I&; zj3@7eM?^%98WMq$68i{hTJ}C=Ic%-0%yl~n-A~r_Q0H5Al@FUVQr?`El|ApF07*qoM6N<$g7Q#sV*mgE literal 0 HcmV?d00001 diff --git a/src/ProxyInterfaceSourceGenerator/ProxyInterfaceSourceGenerator.csproj b/src/ProxyInterfaceSourceGenerator/ProxyInterfaceSourceGenerator.csproj index 8525845..5b6da34 100644 --- a/src/ProxyInterfaceSourceGenerator/ProxyInterfaceSourceGenerator.csproj +++ b/src/ProxyInterfaceSourceGenerator/ProxyInterfaceSourceGenerator.csproj @@ -1,7 +1,7 @@ - 0.9.0 + 0.9.0.1 netstandard2.0 {12344228-91F4-4502-9595-39584E5ABB34} latest