Release 3.2.121
C4Sharp version 3.2.121 is released 🚀
We released a new version of C4Sharp. The release includes new improvements such as minor bug fixes to the write test log, code maintainability, and performance. You can read the full list of new enhancements and bug fixes below:
- Adding Memory Stream Generator
- Adding Enterprise Boundary Structure
- Moving Resource Files to .c4s Directory
- Adding SVG File Generator (thank you @Nino-Dioses 🤝 )
- Removing Unnecessary Code (💩)
Break changes ⚠️
Moving Resource Files to .c4s Directory
Now, the resource files are saved separately from your diagram files.
Thank you, @Lowpoc!!!
Improvements 😎
Adding Memory Stream Generator
Now the Session has a method 'GetStream' that generate a Stream of Diagram
var diagram = ContextDiagramBuilder.Build() with { Title = "Diagram" };
var session = new PlantumlSession();
var (filename, results) = session.GetStream(diagram);
Adding Enterprise Boundary Structure
Now, C4Sharp has the Enterprise Boundary Structure :
public static ContextDiagram Build()
{
return new ()
{
Title = "System Enterprise diagram for Internet Banking System",
Structures = new Structure[]
{
Customer,
new EnterpriseBoundary("eboundary", "Domain A")
{
Structures = new Structure []
{
BankingSystem,
new EnterpriseBoundary("eboundary1", "Domain Internal Users")
{
Structures = new Structure []
{
InternalCustomer,
}
},
new EnterpriseBoundary("eboundary2", "Domain Managers")
{
Structures = new Structure []
{
Manager,
}
},
}
},
Mainframe,
MailSystem
},
Relationships = new[]
{
Customer > BankingSystem,
InternalCustomer > BankingSystem,
Manager > BankingSystem,
(Customer < MailSystem)["Sends e-mails to"],
(BankingSystem > MailSystem)["Sends e-mails", "SMTP"][Neighbor],
BankingSystem > Mainframe,
}
};
}
Adding SVG File Generator
Now, you can build SVG images as well as PNG image files
new PlantumlSession()
.UseDiagramImageBuilder()
.UseDiagramSvgImageBuilder()
.UseStandardLibraryBaseUrl()
.Export(diagrams);
Thank you, @Nino-Dioses!!!
See more in our sample code