Skip to content

Commit 398785d

Browse files
committed
Added FAQ
1 parent d1c02f4 commit 398785d

File tree

8 files changed

+255
-91
lines changed

8 files changed

+255
-91
lines changed

docs/_data/meta.csv

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,11 @@ options,Options,Options,,Options,,,
2020
configuration,Configuration,Configuration,,Configuration,,,
2121
articles,Articles,Articles,,Articles,,,
2222
faq,FAQ,FAQ,,FAQ,,,
23+
issue-tracker,Issue Tracker,Issue Tracker,,Issue Tracker,,,
24+
faq-general,FAQ - General,FAQ - General,,FAQ - General,,,
25+
faq-installation,FAQ - Installation,FAQ - Installation,,FAQ - Installation,,,
26+
faq-license,FAQ - License,FAQ - License,,FAQ - License,,,
27+
faq-eval-sql-net,FAQ - Eval SQL.NET,FAQ - Eval SQL.NET,,FAQ - Eval SQL.NET,,,
2328
problems,Problems,Problems,,Problems,,,
2429
sql-server-function,SQL Server Function (UDF),SQL Server Function (UDF),,SQL Server Function (UDF),,,
2530
sql-server-regex,SQL Server Regex,SQL Server Regex,,SQL Server Regex,,,

docs/_includes/aside.html

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,30 @@ <h3>API</h3>
4545

4646
</div>
4747

48+
{% elsif page.path contains "/faq/" %}
49+
<div class="card card-layout-z1">
50+
<div class="card-header">
51+
<h3>FAQ</h3>
52+
</div>
53+
<div class="card-body">
54+
55+
<h4>Getting Help</h4>
56+
<ul>
57+
<li><a href="{{ site.github.url }}/contact-us">Contact Us</a></li>
58+
<li><a href="{{ site.github.url }}/issue-tracker">Issue Tracker</a></li>
59+
</ul>
60+
61+
<h4>FAQ</h4>
62+
<ul>
63+
<li><a href="{{ site.github.url }}/faq-general">General</a></li>
64+
<li><a href="{{ site.github.url }}/faq-installation">Installation</a></li>
65+
<li><a href="{{ site.github.url }}/faq-license">License</a></li>
66+
<li><a href="{{ site.github.url }}/faq-eval-sql-net">Eval SQL.NET</a></li>
67+
</ul>
68+
69+
</div>
70+
</div>
71+
4872
{% elsif page.path contains "/problems/" %}
4973
<div class="card card-layout-z1">
5074
<div class="card-header">

docs/pages/faq/faq-eval-sql-net.md

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
---
2+
permalink: faq-eval-sql-net
3+
---
4+
5+
## Bug Fixing
6+
7+
You find a bug when compiling? [Report it](https://github.com/zzzprojects/Eval-SQL.NET/issues) and it will be fixed usually within one business day.
8+
9+
## Namespace
10+
11+
All namespace support by SQL CLR are supported by Eval SQL.NET.
12+
13+
[Supported .NET Framework Libraries](https://msdn.microsoft.com/en-us/library/ms403279.aspx)
14+
15+
- CustomMarshalers
16+
- Microsoft.VisualBasic
17+
- Microsoft.VisualC
18+
- mscorlib
19+
- System
20+
- System.Configuration
21+
- System.Data
22+
- System.Data.OracleClient
23+
- System.Data.SqlXml
24+
- System.Deployment
25+
- System.Security
26+
- System.Transactions
27+
- System.Web.Services
28+
- System.Xml
29+
- System.Core.dll
30+
- System.Xml.Linq.dll
31+
- All common namespace and extensions method can be used without specifying the fullname.
32+
33+
You can see the full list [here](https://github.com/zzzprojects/Eval-SQL.NET/blob/master/src/Z.Expressions.SqlServer.Eval/EvalContext/EvalContext.RegisterDefaultAlias.cs)
34+
35+
Let us know if you believe we have missing some.
36+
37+
## Performance
38+
39+
You are worried about performance? Don't worry, Eval SQL.NET is super-fast and can evaluate over 150,000 expressions in a loop under one second and over 1,000,000 using a table!
40+
41+
Result highly vary depending of your SQL Server performance and expression to evaluate.
42+
43+
{% include template-example.html %}
44+
{% highlight csharp %}
45+
46+
DECLARE @startTime DATETIME,
47+
@endTime DATETIME
48+
49+
DECLARE @I INT = -1
50+
DECLARE @sqlnet SQLNET = SQLNET::New('i + 1')
51+
-- LET Compile the expression to check the compiled performance
52+
SET @I = @sqlnet.Val('i', @I).EvalInt()
53+
54+
SET @startTime = GETDATE()
55+
56+
WHILE @I < 125000
57+
BEGIN
58+
SET @I = @sqlnet.ValueInt('i', @I).EvalInt()
59+
END
60+
61+
SET @endTime = GETDATE()
62+
PRINT 'StartTime = ' + CONVERT(VARCHAR(30), @startTime, 121)
63+
PRINT 'EndTime = ' + CONVERT(VARCHAR(30), @endTime, 121)
64+
PRINT 'Duration = ' + CONVERT(VARCHAR(30), @endTime - @starttime, 114)
65+
66+
{% endhighlight %}
67+
68+
## Security
69+
70+
SQL CLR allow three type of permission:
71+
72+
- SAFE
73+
- EXTERNAL_ACCESS
74+
- UNSAFE Eval SQL.NET support all types and is installed by default with SAFE permissions. Read more about [SQL CLR Permissions](https://msdn.microsoft.com/en-CA/library/ms345101.aspx)
75+
76+
## SQL Injection
77+
78+
This library allow to use parameter, so no SQL Injection is possible!
79+
80+
However if you build the string to evaluate as you build a dynamic SQL, then there is nothing we can do for you.
81+
82+
## Decimal throw an error!
83+
84+
In C#, decimal must be suffixed with "m" to make them valid. By default "1.1" in C# is a double which cannot be added with decimal value.
85+
86+
{% include template-example.html %}
87+
{% highlight csharp %}
88+
89+
// Trow exception
90+
SELECT SQLNET::New('(x)+1.1234').Val('x', 1.1).Eval()
91+
92+
-- SELECT 2.2234
93+
SELECT SQLNET::New('(x)+1.1234m').Val('x', 1.1).Eval()
94+
{% endhighlight %}

docs/pages/faq/faq-general.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
permalink: faq-general
3+
---
4+
5+
## Which Payment method do you support?
6+
We support the following payment method:
7+
8+
- PayPal
9+
- Check
10+
- Bank Transfer
11+
12+
## Can I purchase this product from a Reseller?
13+
Yes, just let him know to contact us.
14+
15+
## What's your average SLA response and resolution times?
16+
We try to provide an outstanding support service.
17+
18+
We normally answer very fast, often within one hour.
19+
20+
Most fixes is resolved within one business day.
21+
22+
## Do you support EF Core
23+
We do not yet. We are currently re-writing the library to support it.

docs/pages/faq/faq-installation.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
permalink: faq-installation
3+
---
4+
5+
## How to I Install your product?
6+
It simple, you download it from NuGet and add it to your project.
7+
8+
More Info: [Tutorials - Installing](installing)
9+
10+
## I have installed your product, but I don't see your extensions method
11+
- Make sure to install it in the right project
12+
- Make sure your project support .NET40 or better

docs/pages/faq/faq-license.md

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
---
2+
permalink: faq-license
3+
---
4+
5+
## Developer Seat
6+
7+
### What's a developer seat?
8+
A developer seat is a developer working for your company and developing code directly with our product.
9+
10+
You don't have to purchase developer seat for front-end developer or back-end developer which doesn't use our product API.
11+
12+
Since you buy developer seat, you can develop an unlimited amount of project within your company.
13+
14+
### What's the cost for additional developer seat?
15+
The cost for additional developer seat is usually extremely low. We want to make sure our library is accessible for small and large company.
16+
17+
### Do developer seat are transferable?
18+
Yes, a developer seat can be transferred to any employee within your company.
19+
20+
## Perpertual License
21+
22+
### What's a perpetual license?
23+
A perpetual license allows you to use the licensed product indefinitely.
24+
25+
### Even when my Support & Upgrade is expired?
26+
Yes.
27+
28+
## Support & Upgdrade
29+
30+
### My support & upgrade have expired! What will happen?
31+
Don't worry. Your product continue to work forever!
32+
33+
You can still download and use any version released before the support & upgrade expiration date.
34+
35+
You will need to renew to use version released after the support & upgrade expiration date.
36+
37+
### How do I renew my License?
38+
We usually start to send renewal mail two months before the support & upgrade expiration date.
39+
40+
If you didn't receive such email, you could contact us directly: [email protected]
41+
42+
### Can I have renewal discount?
43+
We provide a 25% discount to early renewal. So anyone renewing before the support & upgrade expiration date automatically get a renewal discount.
44+
45+
### I'm too late for early renewal discount! What can I do?
46+
If you are few day late, we still provide early renewal discount.
47+
48+
However, if you have few months late, you will need to purchase the library again.
49+
50+
The best way to find out if you still have access to early renewal discount is by contacting us: [email protected]
51+
52+
### Why should I renew?
53+
Renewing your support & upgrade give the following benefits:
54+
55+
- Major version releases and new product features
56+
- Fast support by mail
57+
- Protection against price increases during the maintenance term
58+
59+
## Royalty Free
60+
61+
### Can I install Entity Framework Extensions on Client Machine?
62+
Yes, the product is royalty free.
63+
64+
That mean, you paid for developer seat, but customer using your product doesn't have to pay.
65+
66+
### Is Entity Framework Extensions Royalty Free?
67+
Yes, the product is royalty free.
68+
69+
This mean, you can develop a project and install it on thousands of clients.
70+
71+
You paid for developer seat within your company.
72+
73+
Some standard royalty free limitations:
74+
75+
- You can't sell a similar product and claim it's yours.
76+
- If your customer has access to your source code and develops using our API, they will have to purchase a license.

docs/pages/faq/faq.md

Lines changed: 8 additions & 91 deletions
Original file line numberDiff line numberDiff line change
@@ -1,94 +1,11 @@
11
---
22
permalink: faq
33
---
4-
5-
## Bug Fixing
6-
7-
You find a bug when compiling? [Report it](https://github.com/zzzprojects/Eval-SQL.NET/issues) and it will be fixed usually within one business day.
8-
9-
## Namespace
10-
11-
All namespace support by SQL CLR are supported by Eval SQL.NET.
12-
13-
[Supported .NET Framework Libraries](https://msdn.microsoft.com/en-us/library/ms403279.aspx)
14-
15-
- CustomMarshalers
16-
- Microsoft.VisualBasic
17-
- Microsoft.VisualC
18-
- mscorlib
19-
- System
20-
- System.Configuration
21-
- System.Data
22-
- System.Data.OracleClient
23-
- System.Data.SqlXml
24-
- System.Deployment
25-
- System.Security
26-
- System.Transactions
27-
- System.Web.Services
28-
- System.Xml
29-
- System.Core.dll
30-
- System.Xml.Linq.dll
31-
- All common namespace and extensions method can be used without specifying the fullname.
32-
33-
You can see the full list [here](https://github.com/zzzprojects/Eval-SQL.NET/blob/master/src/Z.Expressions.SqlServer.Eval/EvalContext/EvalContext.RegisterDefaultAlias.cs)
34-
35-
Let us know if you believe we have missing some.
36-
37-
## Performance
38-
39-
You are worried about performance? Don't worry, Eval SQL.NET is super-fast and can evaluate over 150,000 expressions in a loop under one second and over 1,000,000 using a table!
40-
41-
Result highly vary depending of your SQL Server performance and expression to evaluate.
42-
43-
{% include template-example.html %}
44-
{% highlight csharp %}
45-
46-
DECLARE @startTime DATETIME,
47-
@endTime DATETIME
48-
49-
DECLARE @I INT = -1
50-
DECLARE @sqlnet SQLNET = SQLNET::New('i + 1')
51-
-- LET Compile the expression to check the compiled performance
52-
SET @I = @sqlnet.Val('i', @I).EvalInt()
53-
54-
SET @startTime = GETDATE()
55-
56-
WHILE @I < 125000
57-
BEGIN
58-
SET @I = @sqlnet.ValueInt('i', @I).EvalInt()
59-
END
60-
61-
SET @endTime = GETDATE()
62-
PRINT 'StartTime = ' + CONVERT(VARCHAR(30), @startTime, 121)
63-
PRINT 'EndTime = ' + CONVERT(VARCHAR(30), @endTime, 121)
64-
PRINT 'Duration = ' + CONVERT(VARCHAR(30), @endTime - @starttime, 114)
65-
66-
{% endhighlight %}
67-
68-
## Security
69-
70-
SQL CLR allow three type of permission:
71-
72-
- SAFE
73-
- EXTERNAL_ACCESS
74-
- UNSAFE Eval SQL.NET support all types and is installed by default with SAFE permissions. Read more about [SQL CLR Permissions](https://msdn.microsoft.com/en-CA/library/ms345101.aspx)
75-
76-
## SQL Injection
77-
78-
This library allow to use parameter, so no SQL Injection is possible!
79-
80-
However if you build the string to evaluate as you build a dynamic SQL, then there is nothing we can do for you.
81-
82-
## Decimal throw an error!
83-
84-
In C#, decimal must be suffixed with "m" to make them valid. By default "1.1" in C# is a double which cannot be added with decimal value.
85-
86-
{% include template-example.html %}
87-
{% highlight csharp %}
88-
89-
// Trow exception
90-
SELECT SQLNET::New('(x)+1.1234').Val('x', 1.1).Eval()
91-
92-
-- SELECT 2.2234
93-
SELECT SQLNET::New('(x)+1.1234m').Val('x', 1.1).Eval()
94-
{% endhighlight %}
4+
## FAQ
5+
6+
- [Contact Us](contact-us)
7+
- [Issue Tracker](issue-tracker)
8+
- [General](faq-general)
9+
- [Installation](faq-installation)
10+
- [License](faq-license)
11+
- [Eval SQL.NET](faq-eval-sql-net)

docs/pages/faq/issue-tracker.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
permalink: issue-tracker
3+
---
4+
5+
## Where is your Issue Tracker?
6+
7+
While we prefer to be contacted directly: [email protected]
8+
9+
We understand some people prefer to have an online issue tracker to follow and comment their issues.
10+
11+
You can create issue here:
12+
13+
- [Issue Tracker](https://github.com/zzzprojects/Eval-SQL.NET/issues)

0 commit comments

Comments
 (0)