Skip to content

Instantly share code, notes, and snippets.

@gistlyn
gistlyn / AppHost.cs
Last active June 30, 2021 07:13
filters
public class AppHost : AppHostBase
{
public AppHost() : base("Web",typeof(MyServices).Assembly){}
public override void Configure(Container container)
{
GlobalRequestFilters.Add((req, res, requestDto) => {
var sessionId = req.GetCookieValue("user-session");
if (sessionId == null)
res.ReturnAuthRequired();
@gistlyn
gistlyn / ContactServices.cs
Last active June 30, 2021 07:13
http-verbs
public class ContactServices
{
public object Get(GetContacts request)
{
var contacts = request.Id == null ?
Db.Select<Contact>() :
Db.Select<Contact>(x => x.Id == request.Id.ToInt());
return contacts;
}
@gistlyn
gistlyn / MyServices.cs
Last active June 30, 2021 07:14
routing
[Route("/hello")]
[Route("/hello/{Name}")]
public class Hello : IReturn<HelloResponse>
{
public string Name { get; set; }
}
public class HelloResponse
{
public string Result { get; set; }
@gistlyn
gistlyn / Client.cs
Last active June 30, 2021 07:13
api-design
var client = new JsonServiceClient(baseUrl);
List<Contact> response = client.Get(new GetContacts());
@gistlyn
gistlyn / Author.cs
Last active June 30, 2021 07:30
example-queries
public class Author
{
public Author(){}
[AutoIncrement]
[Alias("AuthorID")]
public Int32 Id { get; set;}
[Index(Unique = true)]
[StringLength(40)]
public string Name { get; set;}
public DateTime Birthday { get; set;}
@gistlyn
gistlyn / AppHost.cs
Last active June 30, 2021 07:13
supported-dbs
public class AppHost : AppHostBase
{
public AppHost() : base("Web",typeof(MyServices).Assembly){}
public override void Configure(Container container)
{
var connectionString =
"Server=127.0.0.1;Port=5432;" +
"Database=host;User Id=user;" +
"Password=myPassword;";
@gistlyn
gistlyn / AppHost.cs
Last active June 30, 2021 07:12
redis-connection
public class AppHost : AppHostBase
{
public AppHost() : base("Web",
typeof(MyServices).Assembly) { }
public override void Configure(Container container)
{
var connectionString = "redis://localhost:6379";
// Register client manager.
container.Register<IRedisClientsManager>(
@gistlyn
gistlyn / AppHost.cs
Last active June 30, 2021 07:12
db-connection
public class AppHost : AppHostBase
{
public AppHost() : base("Web",typeof(MyServices).Assembly){}
public override void Configure(Container container)
{
var connectionString =
"Server=127.0.0.1;Port=5432;" +
"Database=myDataBase;User Id=myUsername;" +
"Password=myPassword;";
@gistlyn
gistlyn / AppHost.cs
Last active June 30, 2021 07:19
mixtemplates
public class AppHost : AppHostBase
{
public AppHost() : base("Web",typeof(MyServices).Assembly){}
// Configure your AppHost with the necessary configuration
// and dependencies your App needs
public override void Configure(Container container)
{
SetConfig(new HostConfig {
DebugMode = AppSettings.Get(
@gistlyn
gistlyn / AppHost.cs
Last active June 30, 2021 07:11
appsettings
public class AppHost : AppHostBase
{
public AppHost() : base("Web",typeof(MyServices).Assembly)
{
var customSettings = new FileInfo("appsettings.txt");
if (customSettings.Exists)
{
AppSettings = new TextFileSettings(customSettings.FullName);
}
}