Skip to content

Instantly share code, notes, and snippets.

@ahmad2x4
ahmad2x4 / gist:3759816
Created September 21, 2012 05:06
Empty image
Image image = new Bitmap(1,1);
MemoryStream ms = new MemoryStream();
image.Save(ms,System.Drawing.Imaging.ImageFormat.Bmp);
var test = ms.ToArray();
@ahmad2x4
ahmad2x4 / gist:3778821
Created September 24, 2012 22:25
WebApi Call Json
private TResult CallWebApi<TResult, TRequest>(string baseURI, string resource, string method, TRequest request)
{
HttpClient client = new HttpClient();
client.BaseAddress = new Uri(baseURI);
// Add an Accept header for JSON format.
client.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
@ahmad2x4
ahmad2x4 / blog_AutomapperExpression_1.cs
Last active August 29, 2015 14:06
Blog autpmapper expression
public class Source
{
public string FullName { get; set; }
public int NumberOfYears { get; set; }
}
public class Destination
{
[Key]
public int UserId { get; set; }
public string Name { get; set; }
@ahmad2x4
ahmad2x4 / blog_AutomapperExpression_2.cs
Created September 27, 2014 07:36
blog automapper expression
public interface IRepository<T>
{
void Add(T obj);
IQueryable<T> Find(Expression<Func<T, bool>> predicate);
}
@ahmad2x4
ahmad2x4 / blog_AutomapperExpression_2.cs
Created September 27, 2014 07:44
Blog automapper expressions
public interface IRepository<TI, TO>
{
void Add(TI obj);
IQueryable<TO> Find(Expression<Func<TI, bool>> predicate);
}
@ahmad2x4
ahmad2x4 / Blog_automapperExpression_2.cs
Created September 27, 2014 07:48
blog automapper expression
public void Add(Source source)
{
_context.Users.Add(Mapper.Map<Destination>(source));
}
@ahmad2x4
ahmad2x4 / Blog_automapperexpression_4.cs
Created September 28, 2014 00:42
blog automapper expression
class ParameterReplacer : ExpressionVisitor
{
private readonly ParameterExpression _parameter;
private readonly Expression _replacement;
private ParameterReplacer(ParameterExpression parameter, Expression replacement)
{
_parameter = parameter;
_replacement = replacement;
}
@ahmad2x4
ahmad2x4 / Blog_automapperexttesions_5.cs
Created September 28, 2014 00:49
Blog automapper extensions
public static class FunctionCompositionExtensions
{
public static Expression<Func<TX, TY>> Compose<TX, TY, TZ>(this Expression<Func<TZ, TY>> outer, Expression<Func<TX, TZ>> inner)
{
return Expression.Lambda<Func<TX, TY>>(
ParameterReplacer.Replace(outer.Body, outer.Parameters[0], inner.Body),
inner.Parameters[0]);
}
}
@ahmad2x4
ahmad2x4 / Blog_Automapper_expression_6.cs
Created September 28, 2014 07:55
Blog Automapper Expression 6
public class SourceRepositorySql : IRepository<Source, Destination>, IDisposable
{
private readonly MyContext _context;
public SourceRepositorySql(MyContext context)
{
_context = context;
}
public void Add(Source source)
@ahmad2x4
ahmad2x4 / blog_automapperextension_7.cs
Created September 28, 2014 11:55
blog Automapper extension
[Fact]
[UseDatabase]
public void ShouldConvertPredicates()
{
var connStr = ConfigurationManager.ConnectionStrings["SQLExpressConnection"].ConnectionString;
var myContext = new MyContext(connStr);
using (var repository = new SourceRepositorySql(myContext))
{
AddRecords(repository);