pondělí 23. listopadu 2015

Entity Framework - concurrency exceptions


Resolving optimistic concurrency exceptions with Reload (database wins)

https://msdn.microsoft.com/en-us/data/jj592904

středa 18. listopadu 2015

MS Outlook Regiony

MS Outlook Regiony

Pro přidání regionu se zobrazí wizard, který Vás provede jeho vytvořením.
 



Problémy nastanou až s jeho registrací aby se správně zobrazoval i na jiných počítačích než na tom kde ho vyvýjíte. FormRegion je totiž potřeba zapsat do windows registrů
Ve všech návodech se dočtete, že je potřeba vytvořit XML soubor (manifest), který popisuje nový region.
Pokud ale používáte k vývoji VSTO tak se jako manifest použije soubor s příponou *.vsto ve kterém je definice regionu popsána.
Potom už zbývá ve windows registrech vytvořit klíč ve kterém budou hodnoty jako název, popis a cesta k manifestu. A druhý klíč pro FormRegiony ve kterém bude pro typ zprávy kterou náš region rozšiřuje uvedena hodnota jaký region je definován ve kterém manifestu.
Důležité je aby hodnota (=BT.AddIn.Outlook) pro namespace regionu byla stejná jako název klíče (BT.AddIn.Outlook) viz. obrázek
Jinak volaný region nenalezde definici manifestu a nebude to fungovat.
Pokud máte chybu v hodnotě registru a hledáte vsto manifest někde kde není. Outlook Vám po spuštění vyhodí tuto chybu.
Zdroje:

Windows registry
https://msdn.microsoft.com/en-us/library/bb386106.aspx#outlookentries

Tutorial:
https://msdn.microsoft.com/en-us/library/bb226713(v=office.12).aspx
https://msdn.microsoft.com/en-us/library/aa942741%28v=vs.80%29.aspx?f=255&MSPPError=-2147217396
http://www.informit.com/articles/article.aspx?p=1327185&seqNum=4

Setup for AddIn
https://msdn.microsoft.com/en-us/library/cc442767.aspx

Video:
https://www.youtube.com/watch?v=iQm-dUVwMoY

Addin Sample Code
https://www.microsoft.com/en-us/download/confirmation.aspx?id=771

Message class ID
https://msdn.microsoft.com/en-us/library/office/ff861573.aspx

Pokud narazíte na nějaké nestovnalosti v článku nebo máte při vývoji AddInu problém zkuste se mě klidně zeptat. Pokud budu vědět rád poradím.

čtvrtek 5. listopadu 2015

Moq HttpContextu

public static HttpContextBase FakeHttpContext()
 {
 var context = new Mock<HttpContextBase>();
 var request = new Mock<HttpRequestBase>();
 var response = new Mock<HttpResponseBase>();
 var session = new Mock<HttpSessionStateBase>();
 var server = new Mock<HttpServerUtilityBase>();
 var user = new Mock<IPrincipal>();
 var identity = new Mock<IIdentity>();


request.Expect(req => req.Url).Returns(new Uri("http://www.seznam.cz"));
 request.Expect(req => req.ApplicationPath).Returns("~/");
 request.Expect(req => req.AppRelativeCurrentExecutionFilePath).Returns("~/");
 request.Expect(req => req.PathInfo).Returns(string.Empty);
 response.Expect(res => res.ApplyAppPathModifier(It.IsAny<string>()))
 .Returns((string virtualPath) => virtualPath);
 user.Expect(usr => usr.Identity).Returns(identity.Object);
 identity.ExpectGet(ident => ident.IsAuthenticated).Returns(true);

 context.Expect(ctx => ctx.Request).Returns(request.Object);
 context.Expect(ctx => ctx.Response).Returns(response.Object);
 context.Expect(ctx => ctx.Session).Returns(session.Object);
 context.Expect(ctx => ctx.Server).Returns(server.Object);
 context.Expect(ctx => ctx.User).Returns(user.Object);

 return context.Object;
 }


Zdroj:
http://stackoverflow.com/questions/1228179/mocking-httpcontextbase-with-moq