Skip to content

Instantly share code, notes, and snippets.

View grishin's full-sized avatar

Andrey Grishin grishin

  • Tiburon Research
  • Russia, Moscow
View GitHub Profile
@grishin
grishin / string_split_with_order.sql
Created February 8, 2021 13:16
STRING_SPLIT function in T-SQL with order
ALTER FUNCTION [dbo].[fn_StringSplit]
(
@Str varchar(MAX),
@Delimeter char(1),
@Position int
)
RETURNS varchar(MAX)
AS
BEGIN
DECLARE @T TABLE(Id int NOT NULL identity(1,1), [Value] varchar(MAX));
@grishin
grishin / 0_reuse_code.js
Created May 6, 2014 14:15
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console
@grishin
grishin / gist:9068223
Created February 18, 2014 10:23
How to create linked server to Azure SQL.sql
-- replace MYSERVER, MYDB, MYUSER, MYPASSWORD with real values
EXEC sp_addlinkedserver
@server='azure',
@srvproduct='',
@provider='sqlncli',
@datasrc='MYSERVER.database.windows.net',
@location='',
@provstr='',
@catalog='MYDB'
using (var context = new BloggingContext())
{
try
{
context.Configuration.AutoDetectChangesEnabled = false;
// Make many calls in a loop
foreach (var blog in aLotOfBlogs)
{
context.Blogs.Add(blog);
@grishin
grishin / remove_non_alpha_characters.sql
Created January 30, 2014 11:50
How to clean SQL string
CREATE Function [dbo].[fn_cc2RemoveNonAlphaCharacters](@Temp VarChar(1000))
Returns VarChar(1000)
AS
Begin
While PatIndex('%[^a-z]%', @Temp) > 0
Set @Temp = Stuff(@Temp, PatIndex('%[^a-z]%', @Temp), 1, '')
Return @TEmp
End
@grishin
grishin / translit.sql
Created January 30, 2014 11:43
How to convert russian string to english translit
--Взято отсюда http://www.sql.ru/forum/546853-2/est-li-u-kogo-gotovaya-funkciya-perevoda-translit-s-ruskogo-na-angliyskiy с небольшой корректировкой
ALTER FUNCTION [dbo].[fn_cc2ToTranslit] (@name NVARCHAR(MAX))
RETURNS NVARCHAR(MAX)
BEGIN
DECLARE @TransTable TABLE(
Rus Char PRIMARY KEY
,Lat VarChar(2)
)INSERT @TransTable SELECT 'А','A'
UNION ALL SELECT 'Б','B'
@grishin
grishin / render_razor_view_to_string
Created January 25, 2014 15:53
How to render razor view to string
protected string RenderRazorViewToString(string viewName, object model)
{
ViewData.Model = model;
using (var sw = new StringWriter()) {
var viewResult = ViewEngines.Engines.FindPartialView(ControllerContext, viewName);
var viewContext = new ViewContext(ControllerContext, viewResult.View, ViewData, TempData, sw);
viewResult.View.Render(viewContext, sw);
viewResult.ViewEngine.ReleaseView(ControllerContext, viewResult.View);
return sw.GetStringBuilder().ToString();
}
@grishin
grishin / inject_ef_in_controller
Created January 25, 2014 15:49
How to inject Entity Framework into controller with Ninject
private static void RegisterServices(IKernel kernel)
{
kernel.Bind<MyDbContext>().ToSelf().InRequestScope();
}
@grishin
grishin / clean_elmah_logs
Last active January 4, 2016 11:59
How to clean Elmah logs directory with millions of files effectively
rmdir /s /q C:\wwwroot\MyAdmin\App_data
@grishin
grishin / join with on
Created January 25, 2014 15:36
How to JOIN multiple tables with multiple ON conditions in LINQ
from project in _db.Projects
join typeOfficial in _db.GuidContents on (short?)project.TypeOfficial equals typeOfficial.Value into TtypeOfficial
from typeOfficial in TtypeOfficial.DefaultIfEmpty()
where typeOfficial.Guid == 1
join typePanel in _db.GuidContents on (short?)project.TypePanel equals typePanel.Value into TtypePanel
from typePanel in TtypePanel.DefaultIfEmpty()
where typePanel.Guid == 2
join status in _db.GuidContents on (short?)project.StatusId equals status.Value into TStatus
from status in TStatus.DefaultIfEmpty()
where status.Guid == 3