How do I generate SQL database script using C# code or SQL code?
We can use the Generate Scripts option from ssms but how do I generate SQL database script using code?
You should use SQL Server SMO (Server Management Object) that includes exactly the features you're looking for. You can script single database, or specific objects. Actually, that's how SSMS does it.
MSDN sample for scripting database: https://msdn.microsoft.com/en-us/library/ms205825.aspx
https://msdn.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.scripter.aspx