Skip to content
This repository was archived by the owner on Dec 24, 2022. It is now read-only.

Commit e37e819

Browse files
committed
Update with simpler example
1 parent abee66a commit e37e819

File tree

1 file changed

+45
-20
lines changed

1 file changed

+45
-20
lines changed

src/ServiceStack.OrmLite.SqlServerTests/Converters/FileStreamTests.cs

Lines changed: 45 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using Microsoft.SqlServer.Types;
33
using NUnit.Framework;
44
using ServiceStack.DataAnnotations;
5+
using ServiceStack.OrmLite.SqlServer.Converters;
56
using ServiceStack.Text;
67

78
namespace ServiceStack.OrmLite.SqlServerTests.Converters
@@ -13,36 +14,60 @@ public class FileStreamTests : SqlServerConvertersOrmLiteTestBase
1314
[Test]
1415
public void Can_select_from_FileStream()
1516
{
16-
using (var db = OpenDbConnection())
17+
18+
ConnectionString = "Data Source=localhost;Initial Catalog=test2;User Id=test;Password=test;Connect Timeout=120;MultipleActiveResultSets=True;Type System Version=SQL Server 2012;";
19+
var dialectProvider = SqlServerConverters.Configure(SqlServer2012Dialect.Provider);
20+
var dbFactory = new OrmLiteConnectionFactory(ConnectionString, dialectProvider);
21+
22+
using (var db = dbFactory.OpenDbConnection())
1723
{
18-
db.DropAndCreateTable<FileStream>();
19-
20-
db.Insert(new FileStream
21-
{
22-
ID = Guid.NewGuid(),
23-
Name = "file.txt",
24-
Path = SqlHierarchyId.Parse("/1/2/3/"),
25-
ParentPath = SqlHierarchyId.Parse("/1/2/"),
26-
FileContent = "contents".ToUtf8Bytes(),
27-
FileType = MimeTypes.PlainText,
28-
});
29-
30-
//db.Select<FileStream>().PrintDump();
31-
32-
var q = db.From<FileStream>();
33-
db.Select(q);
24+
db.DropTable<TestFile>();
25+
db.CreateTable<TestFile>();
26+
27+
db.Insert(new TestFile { Contents = "contents".ToUtf8Bytes() });
28+
29+
db.Select<TestFile>().PrintDump();
30+
31+
//db.DropTable<FileStream>();
32+
//db.CreateTable<FileStream>();
33+
34+
//db.Insert(new FileStream
35+
//{
36+
// Name = "file.txt",
37+
// Path = SqlHierarchyId.Parse("/1/2/3/"),
38+
// ParentPath = SqlHierarchyId.Parse("/1/2/"),
39+
// FileContent = "contents".ToUtf8Bytes(),
40+
// FileType = MimeTypes.PlainText,
41+
//});
42+
43+
//var q = db.From<FileStream>();
44+
//db.Select(q);
3445
}
3546
}
3647
}
3748

49+
public class TestFile
50+
{
51+
[PrimaryKey]
52+
[CustomField("uniqueidentifier ROWGUIDCOL NOT NULL")]
53+
public Guid Id { get; set; }
54+
55+
[CustomField("varbinary(max) FILESTREAM")]
56+
public byte[] Contents { get; set; }
57+
58+
public bool IsDirectory { get; set; }
59+
60+
[CustomSelect("Contents.GetFileNamespacePath() + (CASE WHEN is_directory = 1 THEN '\' ELSE '' END)")]
61+
public string FullPath { get; set; }
62+
}
3863

3964
public class FileStream
4065
{
4166
[PrimaryKey]
42-
[Alias("stream_id")]
43-
public Guid ID { get; set; }
67+
[CustomField("uniqueidentifier ROWGUIDCOL NOT NULL")]
68+
public Guid Id { get; set; }
4469

45-
//[CustomField("varbinary(max) FILESTREAM")]
70+
[CustomField("varbinary(max) FILESTREAM")]
4671
[Alias("file_stream")]
4772
//[DataAnnotations.Ignore]
4873
public byte[] FileContent { get; set; }

0 commit comments

Comments
 (0)