@manhng

Welcome to my blog!

Oracle ASP.NET Google

January 7, 2022 16:03

Oracle ASP.NET Google (edit)

How to use OracleMembershipProvider in ASP.NET MVC Application​

c# - oracle database connection in web.config asp.net - Stack Overflow

NuGet Gallery | Oracle.Web 21.5.0

ASP.NET Membership Management Tool

sthakuri/ASP.NET-Membership-Management-tool: ASP.NET Membership Management Tool (github.com)

Oracle Data Access Components (ODAC)

Oracle Developer Tools for Visual Studio

Oracle Data Provider for .NET (ODP.NET)

oracle/dotnet-db-samples: .NET code samples for Oracle database developers (github.com)

Overview of Oracle Providers for ASP.NET

Oracle Providers for ASP.NET offer ASP.NET developers an easy to use method to store application state common to web applications (such as web user information, shopping carts) within an Oracle database. These providers are modeled on existing Microsoft ASP.NET providers, sharing similar schema and programming interfaces to provide .NET developers a familiar interface.

Oracle supports the following providers:

  • Membership Provider

  • Role Provider

  • Site Map Provider

  • Session State Provider

  • Profile Provider

  • Web Events Provider

  • Web Parts Personalization Provider

  • Cache Dependency Provider

Each ASP.NET provider can be used individually or in combination with other Oracle ASP.NET providers for your web site. Each of them store a specific set of web site information.

Oracle Providers for ASP.NET classes, their use, installation, and requirements are described in Oracle Providers for ASP.NET Developer's Guide, which is also provided as dynamic help.

Oracle Providers for ASP.NET Installation

Configuring Oracle Providers for ASP.NET Individually

Applications may not require all Oracle Providers for ASP.NET. Providers can be set up individually. Except for the Oracle Session State Provider and Oracle Cache Dependency Provider, the following install script must be executed before any other install scripts. Then, for each Oracle Provider for ASP.NET, a SQL script specific for that provider must be executed (in any order).

These install scripts are found in the ORACLE_BASE\ORACLE_HOME\ASP.NET\sql directory.

Table 1-2 Provider Installation Scripts

Provider Required Installation Script

Oracle Membership Provider

InstallOracleMembership.sql

Oracle Personalization Provider

InstallOraclePersonalization.sql

Oracle Profile Provider

InstallOracleProfile.sql

Oracle Role Provider

InstallOracleRoles.sql

Oracle Session State Provider

For Oracle Database 10g Release 1 and later InstallOracleSessionState.sql

For Oracle Database 9i Release 2 InstallOracleSessionState92.sql

There are correspondingly named uninstall scripts for these install scripts.

Note: This provider only requires the execution of the appropriate provider-specific .sql script as listed. It does not require the execution of InstallOracleASPNETCommon.sql.

Oracle Site Map Provider

InstallOracleSiteMap.sql

Oracle Web Events Provider

InstallOracleWebEvents.sql

Oracle Cache Dependency Provider

No script execution needed

General Setup Information

Once InstallOracleASPNETCommon.sql runs and calls the individual installation scripts, the installation scripts, in turn, execute corresponding .plb scripts, which create the stored procedures and functions. The installation .sql scripts must execute where the .plb file can be accessed.

Each provider also provides corresponding uninstall scripts to remove database objects that were created from the install scripts. These scripts are prefixed with the word Uninstall.

ASP.NET Client Setup

Installation configures the machine.config file to enable Oracle Providers for ASP.NET systemwide. Users can use the ORACLE_BASE\ORACLE_HOME\ASP.NET\Bin\2.x\OraProvCfg utility to configure the provider-specific entry in the machine.config file as follows:

  • To display the OraProvCfg utility help:

    OraProvCfg -help 
    
  • To add Oracle Providers for ASP.NET-specific entries to the machine.config file:

     OraProvCfg  /action:config  /product:aspnet  /component:all
                 /frameworkversion:v2.0.50727
                 /providerpath:c:\Oracle\odp.net\bin\2.x\Oracle.Web.dll
    

    Where Framework version and Provider path (especially) may need to change accordingly.

  • To remove the Oracle Providers for ASP.NET-specific entries from the machine.config file:

    OraProvCfg  /action:unconfig  /product:aspnet  /component:all
                /frameworkversion:v2.0.50727
    

Where Framework version may need to change accordingly.

After installation, developers must provide the connection information to the database schema that stores and retrieves the ASP.NET state information. This step requires developers to supply the User Id, Password, Data Source, and other connection string information if necessary. In the machine.config file, developers can provide an entry similar to the example below.

<connectionStrings>
<add name="OraAspNetConString" connectionString="User Id=aspnet;Password=aspnet;Data Source=oracle; " />
</connectionStrings>

Optionally, developers can customize the properties of each ASP.NET provider from within the <system.web> section of the machine.config.

While Oracle Universal Installer automatically configures the machine.config, developers can apply more fine grained application-level control over the Oracle Providers for ASP.NET by using the web.config file. This file overrides entries from the machine.config file, but only for the specific web application it is a part of. Developers can set up their web.config file with the same XML syntax as the machine.config file.

Oracle.DataAccess.Client

Web.config file for EPiServer 6.0.530.0 for IIS6 and Visual Studio development server (github.com)

OracleMembershipProvider

Managing Users by Using Membership | Microsoft Docs

OracleMembershipProvider

Migrate ASP.NET to Google Cloud Platform

Its show how to migrate existing legacy .NET application to Google Cloud Platform.

dotnet-docs-samples/applications/liftAndShiftPetshop at main · GoogleCloudPlatform/dotnet-docs-samples (github.com)

ASP.NET Membership and Role Provider using Oracle database

We all know that in ASP.NET 2.0 there are Built-In Providers to help developers to build a robust application.

  • Membership
  • Role management
  • Site map
  • Profile
  • Session state
  • Web events
  • Web Parts personalization
  • Protected configuration

What i want to write here is about Membership Provider and Role Provider,

Membership
System.Web.Security.ActiveDirectoryMembershipProvider
System.Web.Security.SqlMembershipProvider

Role management
System.Web.Security.AuthorizationStoreRoleProvider
System.Web.Security.SqlRoleProvider
System.Web.Security.WindowsTokenRoleProvider

Tìm kiếm trước khi có Google

August 17, 2020 10:02

Tìm kiếm trước khi có Google (edit)

https://genk.vn/truoc-khi-co-google-cu-dan-mang-tien-hanh-tim-kiem-nhu-the-nao-20200813123226152.chn

Bibliometrics - đo lường thư mục là cách thức tạo ra các liên kết giữa các văn bản và rồi cho chúng đi theo hệ thống mạng. Cách thức này đặc biệt hữu ích khi người dùng tìm những chủ đề với những thuật ngữ chuyên môn thay đổi liên tục.

Một trong những yếu tố quan trọng nhất của thời buổi chia sẻ thông tin qua Internet chính là các chuyên gia có chuyên môn, từ thủ thư cho tới các học giả cho tới những người có thú vui tìm hiểu, họ chính là những người chuyên tâm nuôi dưỡng kho tàng kiến thức và sắp xếp chúng cho người khác tìm. Nhờ đó, bàn tay can thiệp của con người hiện hữu rõ, ngay cả khi AI và các công cụ tìm kiếm xuất hiện. Chúng ta hiểu rằng sức người thì kiến thức mới được chia sẻ online, và chúng ta phải tự tìm ra đâu mới là nguồn uy tín dựa trên một vài trang web được điều hành bởi các tổ chức lớn, đặc biệt là các trường đại học và các tổ chức nghiên cứu.

Thực tế, công cụ tìm kiếm đầu tiên là các thư viện ảo, và nhiều người dùng hiểu rằng giá trị của thư viện nằm ở việc chúng là của công. Khi tự động hóa dần xuất hiện, thủ thư và chuyên gia sách bị thay thế bởi trí tuệ nhân tạo, chúng ta mất mát nhiều lắm. Những giá trị chung bị thay thế bởi những nền tảng khổng lồ phục vụ cho việc quảng cáo, như là Yahoo! Hay Google.

Ngày nay, ý kiến chuyên môn thường tới từ nguồn ngoài và được tối ưu hóa, hậu thuẫn về mặt tài chính bởi người trả giá cao nhất trên AdWords. Điều này đã tạo khoảng cách lớn giữa tri thức và quảng cáo trên các nền tảng công cụ tìm kiếm, nhất là khi một người muốn tìm hiểu về những vấn đề phức tạp. 

Theo một cách nào đó, hành động “tìm kiếm” của thời nay đã làm xói mòn niềm tin của ta vào ý kiến chuyên gia cũng như chính tư duy phản biện của cá nhân, những thứ vốn được hậu thuẫn bởi những sự thật và các nghiên cứu được xây dựng chặt chẽ, và khiến chúng ta dễ bị “dắt mũi” bởi những nội dung độc hại. Công cụ tìm kiếm có thể giúp ta dễ dàng tìm ra những thông tin tầm thường, nhưng lại làm ta quên đi giá trị của quá trình điều tra, tìm hiểu chậm chạp nhưng chắc chắn.

Tôi không muốn hoài niệm quá mức: tôi không muốn quay về cái thời phải tìm kiếm nội dung qua các hyperlink đâu, và tôi cũng dùng Google nhiều như bao người khác. Nhưng cái cách Google hoạt động, nhờ có PageRank, thì một website mà có càng nhiều đường link tới từ những nguồn có tầm ảnh hưởng rộng, kết quả sẽ càng dễ hiện ở những trang đầu tiên. Điều này khiến lưu lượng người truy cập sẽ đổ dồn về một số trang web lớn.

Google+Amazon+Apple+Microsoft+Facebook (GAAMF)

August 6, 2019 08:36

Google LLC (edit)

Google biết gì về bạn?

Những thứ bạn làm + những thứ bạn tạo nên + và những thứ định nghĩa nên con người bạn.

Bạn có thể tắt theo dõi vị trí

Bạn có thể tắt tìm kiếm giọng nói và các tính năng khác

Bạn có thể xem và điều chỉnh các thiết lập cá nhân

Bạn có thể thay đổi hồ sơ công khai và tải về tập tin dữ liệu Google để xem họ có gì về bạn.

Ngoài ra, bạn có thể cao tay hơn và xóa toàn bộ dữ liệu của bạn, không chỉ từ Google mà còn từ nhiều dịch vụ trực tuyến khác.

1. Đầu tiên, vào Deseat.me và đăng nhập bằng tài khoản Gmail

2. Nhìn xuống danh sách các tài khoản đã đồng bộ và chọn những tài khoản bạn muốn xóa, những tài khoản muốn giữ lại

3. Nhấn nút "Delete" là xong.

Liệu xóa dữ liệu từ các công ty đang thu thập thông tin về bạn có ngăn được vấn nạn khai thác dữ liệu hay không? Chắc chắn là không. Nhưng ít ra chúng ta có cơ hội để khiến mọi người chú ý hơn đến những hệ quả của một nền kỹ trị đang nhăm nhe tìm cách tư nhân hóa hoạt động giám sát/theo dõi người dùng.

Shark Tank

Ngoại ngữ - tiếng Anh và xác định đó là nền tảng cốt lõi để người trẻ học hỏi thành công.

Tiếng Anh cũng chỉ là công cụ để giới trẻ tự tin tiếp cận với kho tàng kiến thức của thế giới, nhưng yếu tố quan trọng hơn chính là cách sống có ước mơ, hoài bão, có năng lực lãnh đạo.

Nhấn mạnh "năng lực lãnh đạo" ở đây là lãnh đạo bản thân mình, chứ không phải làm "ông nọ bà kia".

"Đầu tiên là giúp các em ngay từ nhỏ biết được điểm mạnh của mình là gì, ước mơ của mình là gì, hoài bão của mình là gì. Các con có thể thử và sai, hôm nay thích cái này, sẽ được trao cơ hội để tìm hiểu về cái đó. Có thể 1 năm sau nhận ra "Không, con thích cái kia" cũng được. Và câu trả lời ấy nên được đưa ra rất sớm"

Con em chúng ta là tài nguyên lớn nhất của quốc gia. Chúng ta mong muốn những đứa trẻ ấy lớn lên sẽ trở thành những người có ích - công dân chất lượng cao, chứ không phải là tài nguyên giá rẻ

Google Keywords

May 12, 2018 20:40

Google Search với HTML

https://developers.google.com/web/fundamentals/design-and-ux/input/forms/

https://www.sitepoint.com/meta-tags-html-basics-best-practices/

https://www.sitepoint.com/css-architectures-new-best-practices/

https://www.smashingmagazine.com/2018/04/best-practices-grid-layout/

Google Search với .NET

inurl:best-practices site:sitepoint.com

inurl:best-practices site:codeproject.com

Google Search với JavaScript (edit)

  • plain javascript
  • pure javascript
  • vanilla javascript
  • crude javascript

Thư viện chart - Pure Javascript Plotting

https://github.com/jqPlot/jqPlot

http://www.jqplot.com/

Thư viện minAjax.js

http://flouthoc.github.io/minAjax.js/

Cách viết Javascript + Ajax + Validation + HTML + CSS cho màn hình contact-form.html

https://github.com/talbene/Pure-JavaScript-AJAX-POST-Contact-Form

Cách viết Javascript + Ajax + Validation + HTML + CSS cho màn hình contact-form.html đơn giản

https://github.com/scotch-io/ajax-forms-jquery

So sánh cách dùng Javascript & jQuery để thực hiện AJAX

https://teamtreehouse.com/community/why-use-pure-javascript-to-make-ajax-requests

Cách viết AJAX trong Javascript thuần túy và tái sử dụng lại

https://plainjs.com/javascript/ajax/send-ajax-get-and-post-requests-47/

Cách viết AJAX trong Javascript thuần túy

function callAjax(url, callback){
    var xmlhttp;
    // compatible with IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp = new XMLHttpRequest();
    xmlhttp.onreadystatechange = function(){
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200){
            callback(xmlhttp.responseText);
        }
    }
    xmlhttp.open("GET", url, true);
    xmlhttp.send();
}

AJAX GET

// Exemplo de requisição GET
var ajax = new XMLHttpRequest();

// Seta tipo de requisição e URL com os parâmetros
ajax.open("GET", "minha-url-api.com/?name=Henry&lastname=Ford", true);

// Envia a requisição
ajax.send();

// Cria um evento para receber o retorno.
ajax.onreadystatechange = function() {
  
  // Caso o state seja 4 e o http.status for 200, é porque a requisiçõe deu certo.
	if (ajax.readyState == 4 && ajax.status == 200) {
    
		var data = ajax.responseText;
		
    // Retorno do Ajax
		console.log(data);
	}
}

AJAX POST

// Exemplo de requisição POST
var ajax = new XMLHttpRequest();

// Seta tipo de requisição: Post e a URL da API
ajax.open("POST", "minha-url-api", true);
ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

// Seta paramêtros da requisição e envia a requisição
ajax.send("email=teste@teste.com");

// Cria um evento para receber o retorno.
ajax.onreadystatechange = function() {
  
  // Caso o state seja 4 e o http.status for 200, é porque a requisiçõe deu certo.
	if (ajax.readyState == 4 && ajax.status == 200) {
    
		var data = ajax.responseText;
		
    // Retorno do Ajax
		console.log(data);
	}
}

Cách post một form bằng javascript nguyên thủy

https://stackoverflow.com/questions/30414372/ajax-post-implementation-in-pure-javascript

Cách viết javascript nguyên thủy và cách viết sử dụng jQuery

https://blog.garstasio.com/you-dont-need-jquery/ajax/

Cách viết những hàm javascript nguyên thủy

https://plainjs.com/javascript/

https://plainjs.com/javascript/?pagi=2

https://plainjs.com/javascript/?pagi=3

Dự án nguồn mở của Google

https://github.com/google/caja

Cách viết code cho sự kiện document ready và window onload trong javascript không sử dụng jQuery

https://www.sitepoint.com/jquery-document-ready-plain-javascript/

Cách viết OOP trong Javascript - CRUD application với Javascript

https://medium.com/@etiennerouzeaud/a-simple-crud-application-with-javascript-ebc82f688c59

function extend(obj, src) {
    Object.keys(src).forEach(function(key) { obj[key] = src[key]; });
    return obj;
}

function extend(obj, src) {
    for (var key in src) {
        if (src.hasOwnProperty(key)) obj[key] = src[key];
    }
    return obj;
}

// example
var a = { foo: true }, b = { bar: false };
var c = extend(a, b);

console.log(c);
// { foo: true, bar: false }

Ajax File Uploads

https://robots.thoughtbot.com/ridiculously-simple-ajax-uploads-with-formdata

https://github.com/New-Bamboo/example-ajax-upload

code

Why I Quit Google to Work for Myself

March 4, 2018 10:30

Why I Quit Google to Work for Myself

https://mtlynch.io/why-i-quit-google/

Sau khi đọc bài này thì sẽ học được mấy vấn đề về quản lý, và cũng học được cách phấn đấu để làm việc trong công ty

Trong công ty, bạn có giải quyết bao nhiêu vấn đề khó khăn, xử lý bao nhiêu sự cố nhưng những vấn đề đó lại chẳng được ai quan tâm, thay vì đó, hay chọn lựa các vấn đề mà khi làm bạn sẽ có lợi về sau

Categories

Recent posts