假设我在架构中有以下枚举:
enum Role {
USER @map("Пользователь")
JUDGE @map("Судья")
ADMIN @map("Администратор")
@@map("roles")
}
我向数据库发出请求并得到以下结果
{
type: "USER"
}
问题是:是否有可能以某种方式获得我用俄语指示的值(它以这种形式存储在数据库中)。很明显,您可以自己整理答案并显示正确的答案,但也许还有更正确的选项?
假设我在架构中有以下枚举:
enum Role {
USER @map("Пользователь")
JUDGE @map("Судья")
ADMIN @map("Администратор")
@@map("roles")
}
我向数据库发出请求并得到以下结果
{
type: "USER"
}
问题是:是否有可能以某种方式获得我用俄语指示的值(它以这种形式存储在数据库中)。很明显,您可以自己整理答案并显示正确的答案,但也许还有更正确的选项?
我正在尝试处理 css 模块,但首先,只需连接项目中的 css 文件。有以下代码:
包.json
{
"name": "test-css-modules",
"version": "0.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "webpack"
},
"author": "",
"license": "ISC",
"devDependencies": {
"babel-core": "^6.26.3",
"babel-loader": "^8.2.5",
"babel-preset-env": "^1.7.0",
"css-loader": "^6.7.1",
"mini-css-extract-plugin": "^2.6.1",
"style-loader": "^3.3.1",
"webpack": "^5.73.0",
"webpack-cli": "^4.10.0"
}
}
webpack.config.js
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
const path = require('path');
module.exports = {
entry: './src',
output: {
path: path.resolve(__dirname, 'build'),
filename: 'bundle.js',
},
mode: 'development',
module: {
rules: [
{
test: /\.js/,
use: 'babel-loader',
include: __dirname + '/src',
},
{
// test: /\.css/,
test: /\.css$/i,
use: [MiniCssExtractPlugin.loader, 'css-loader'],
// use: ['style', 'css'],
// use: ['style-loader', 'css-loader'],
include: __dirname + '/src',
},
],
},
};
index.js
// import './app.css';
require('./app.css');
应用程序.css
body {
background-color: bisque;
}
当我编译时,我得到以下信息:
asset bundle.js 3.19 KiB [emitted] (name: main)
./src/app.css 134 bytes [built] [code generated] [1 error]
ERROR in ./src/app.css 1:5
Module parse failed: Unexpected token (1:5)
You may need an appropriate loader to handle this file type, currently no loaders are
configured to process this file. See https://webpack.js.org/concepts#loaders
> body {
| background-color: bisque;
| }
@ ./src/index.js 6:0-20
webpack 5.73.0 compiled with 1 error in 125 ms
在没有 css、常规 js 的情况下进行测试时,一切正常。尝试设置 css 连接错误。我尝试了不同的选项,它们在代码中被注释掉,但没有任何帮助。告诉我我做错了什么
在学习 react 的时候,我认为将一个创建良好的项目上传到 github 并在那里设置页面是一个好主意。但是在工作的时候,我没有使用react api,而是从nodejs工作,使用了第三方库,创建了文件夹和文件结构。据我了解,有一个构建功能可以链接创建的项目,从逻辑上讲,我可以在任何地方从程序集中运行项目。也许我对某事有误,我希望有人向我解释。
现在,我有几个问题:
需要连接模块,但是禁止在客户端使用require。由于不可能混合 require 和 import,我决定在整个项目中替换 import。我收到多个错误,我无法弄清楚我做错了什么。有2个文件:
index.js
import express from 'express';
import * as router from './router.js';
const app = express();
app.use(router); // тут падает ошибка, описание в конце
路由器.js
import express from 'express';
const router = express.Router();
router.get('/', (_request, response) => {
response.sendFile(`${__dirname}/html/index.html`);
});
module.exports = router;
错误如下:
TypeError: app.use() 需要一个中间件函数
问题:如何正确导出和导入文件、函数?
添加
cookies.js文件
export function setCookie(name, value, options = {}) {
// ...
}
export function getCookie(request, name) {
// ...
}
服务器工作正常getCookie
,没有问题。在客户端,我需要 setCookie,我通过 html 连接它:
<script type="module" src="/js/cookies/cookies.js" defer></script>
该页面的脚本文件也包括在内:
<script src="/js/cookies/home.js" defer></script>
home.js
我从using调用该函数setCookie('USER', result[0].id, false)
。写一个错误
ReferenceError:未定义 setCookie
那么如何从客户端连接文件呢?
以下文件可用: router.js
router.post('/database/sqlBilder', jsonParser, function (request, response) {
if (!request.body) return response.sendStatus(400);
sqlBilder(request.body.code, request.body.table, [request.body.login, request.body.password]);
});
handler.js
let user = JSON.stringify({ 'code': code,
'table': table,
'login': args[0].value,
'password': args[1].value });
let response = await fetch('./database/sqlBilder', {
method: 'POST',
body: user,
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
})
if (response.ok) {
let text = response.json();
console.log(text);
alert("Запрос выполнен: " + response.status);
} else {
alert("Ошибка HTTP: " + response.status);
}
sqlbuilder.js
query = `SELECT * FROM ${table} WHERE`;
// ...
query += ` id = '${args[0]}';`;
pool.execute(query, (err, results)=>{
if (err) {
throw err;
}
else{
console.log('Из базы получена запись');
console.log(results[0].id);
}
return JSON.stringify({ 'id': results[0].id});
});
底线是这样的:在 html 页面上调用 AJAX 请求,将数据传输给它,请求转到处理程序,在处理程序中对其进行解析并将其数据转到导入的函数,在那里执行一个 sql 查询到数据库,它成功地向我发出收到正确 ID 的信号。到目前为止,一切正常。据我了解,我不仅要执行一个sql查询,还要返回它的结果,当然,数据没有返回,我看到了Ошибка HTTP: 500
。
我想知道如何返回并接受这个请求的结果?
有一个 index.html 文件没有什么特别的,但是有一个homePageHadnler.js
.
该文件包含几个用于检查数据输入的函数,当所有检查都成功通过时,必须调用另一个文件中包含用于生成 SQL 查询的函数的方法。
homePageHadnler.js 代码:
function handlerReg() {
const login = document.forms.reg.login
const password = document.forms.reg.password
const args = [login, password]
//..
checkErrors(args)
}
async function checkErrors(args) {
const errors = document.forms.reg.querySelectorAll('.error')
if (errors.length === 0) {
let response = await fetch('./database/sqlBilder', {
method: 'POST',
body: 'name=Vasya'
})
if (response.ok) {
alert("Запрос выполнен: " + response.status);
} else {
alert("Ошибка HTTP: " + response.status);
}
}
}
包含的文件代码:
const pool = require('./database/pool')
function query (code, table, args){
if (code === 1){
let query = `INSERT INTO ${table} VALUES (${args})`
console.log(query)
return query
}
}
根据评论的建议,我写了一个ajax请求。他成功地说他能够到达所需的页面(状态 = 200),但没有返回任何内容,也没有打印到控制台。
那么如何值得更改此代码以便通过请求发送整个参数集(我认为将其作为字典进行,但我不确定它是否正确),最重要的是,如何获取数据在 SQL 查询形成页面上?
PS:目前如果我将输出放在服务器上的控制台中
console.log('Строка аргументов: ' + request.body)
返回undefined
。
我正在尝试使用 node.js 开始开发。我几乎不会在里面或 js 中翻找,但我想弄清楚。启动服务器时,我重定向到主页,但样式未连接到它。下面的代码
const http = require('http')
const fs = require('fs')
const path = require('path')
const server = http.createServer((req, res)=>{
let filePath = path.join(__dirname, 'html', req.url === '/' ? 'index.html' : req.url)
const ext = path.extname(filePath)
let contentType = 'text/html'
switch (ext){
case '.css':
contentType = 'text/css'
break
case '.js':
contentType = 'text/javascript'
break
default:
contentType = 'text/html'
}
if(!ext){
filePath += '.html'
}
fs.readFile(filePath, (err, content) => {
if(err){
fs.readFile(path.join(__dirname, 'html', 'error.html'), (err, data)=>{
if(err){
res.writeHead(500)
res.end('Error')
} else{
res.writeHead(200, {
'Content-Type': contentType
})
res.end(data)
}
})
} else{
res.statusCode = 200;
res.setHeader('Content-Type', contentType);
res.end(content)
}
})
})
const PORT = process.env.PORT || 3000
server.listen(PORT, ()=>{
console.log(`Server has been started on ${PORT} ...`)
})
body{
background: rgb(223, 12, 12);
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="/css/style.css">
<title>Home page</title>
</head>
<body>
<nav>
<a href="/">Home</a>
<a href="/contact">Contact</a>
</nav>
<h1>Home page</h1>
</body>
</html>
<!-- begin snippet: js hide: false console: true babel: false -->
文件夹结构如下:
我试图以不同的方式连接风格,有一点,有两个,没有它们。始终为白色背景和黑色文本。如果将 css 推入 html 文件夹,则样式已连接,但这可能不正确。最初,浏览器有一个样式被识别为的警告type="text/html"
,但现在没有这样的消息。
我想知道如何使一切正常工作?
PS:题外话:有什么值得看的,明确如何在node.js下开发(初学者最好清晰易懂)?
任务如下。接收到包含其他数组的数组,例如:
$arr = array(
array(
'0' => 'Химия',
'1' => 'очная',
'2' => 'пропуск'
),
array(
'0' => 'Химия',
'1' => 'заочная',
'2' => 'пропуск'
),
array(
'0' => 'Химия',
'1' => 'очная',
'2' => 'пропуск'
),
array(
'0' => 'Физика',
'1' => 'очная',
'2' => 'пропуск'
)
);
只有唯一的集合需要从这个集合中提取。所有字段中的值都会改变。实际上,我不明白如何根据几列的唯一性来选择数组。
结果,您应该得到数组:
'Химия', 'очная', 'пропуск'
'Химия', 'заочная', 'пропуск'
'Физика', 'очная', 'пропуск'
尝试通过array_unique($arr);
但只获得一个第一个条目
我在网站上发现了一个关于采样的问题,但是很可惜,它不适合我。
值得补充的是,在内部数组中,也有包含不同数据的列。
我的任务是让我自己随机。我正在生成一定长度的随机数,比如 3 位数字。生成应该通过鼠标点击和击键发生。PictureBox 用作用户可以用鼠标单击的区域,我可以从中获取坐标并进行加减等操作。现在我需要对键进行定义,以便获取它们的代码并对这些代码进行数学转换,例如添加。
我不知道为什么我的处理程序没有被钩住以及如何正确钩住它。处理程序本身将通过单击按钮启动,并通过单击另一个按钮将其关闭,至少我希望如此。
单击按钮时,将调用以下代码:
private void button1_Click(object sender, EventArgs e)
{
pictureBox1.MouseClick += OnPictureBoxClicked;
pictureBox1.PreviewKeyDown += OnPreviewKeyDown;
}
void OnPreviewKeyDown(object sender, KeyEventArgs e)
{
//e.KeyData.ToString();
}
实际上,我正在尝试通过单击来类比添加处理程序,但出现错误。虽然点击处理程序有效。我不明白我做错了什么。
是的,现在我每次都订阅处理程序,我该如何避免这种情况?很高兴知道。
下面给出了一个特定的抽象类。
abstract class Score{
private double balance;
protected String getBalance(String pin){
if (check(pin))
return Double.toString(balance);
return "Введенный пин-код не корректен";
}
//баланс для внутренних операций
protected Double getBalance(){
return balance;
}
}
需要两种方法,因为对于手动操作,将使用第一种方法(使用 PIN 码),而对于自动操作,将使用第二种方法(自动,例如,现金返还应计)。
有一个实现以下功能的后继者
public class RegularAccount extends Score{
public void pay() {
double price = super.getBalance() * 0.1;
//TODO
}
}
一切都会好起来的,但是如果你创建了一个类的实例RegularAccount
,你可以直接调用该方法getBalance()
,这是我想禁止的。我试图将方法变成一个接口,使其抽象,只是使用访问修饰符,但这一切都没有帮助或者是不可接受的。
从逻辑上讲,我假设getBalance()
抽象类中的方法应该是private
,但是如何从继承人那里调用它,以尽可能保护自己呢?
有没有办法解决这个问题。
我试图了解这两个元素有何不同。我在这里和这里阅读,以及我正在学习的讲座。如果我理解正确,除了定义和连接之外,我还看到以下可能性:
抽象类
界面
我知道接口定义状态,而抽象类定义状态和行为。那么为什么不只使用一个变体,例如一个类呢?
我们只能从一个类继承,但可以从多个接口继承。但是,为什么不创建更多的抽象类并相互继承,从而在工作类中继承一些东西呢?
什么时候应该使用一个而不是另一个?
是否存在需要使用一个或另一个选项的用例?
对Java中的应用程序感兴趣。
加法 假设有这样的结构。
abstract class Figure {
double dim1;
double dim2;
Figure(double a, double b) {
dim1 = a;
dim2 = b;
}
abstract double area();
}
有一个三角形类:
class Rectangle extends Figure {
Rectangle(double a, double b) {
super(a, b);
}
double area() {
System.out.println("B области четырехугольника.");
return dim1 * dim2;
}
}
有一个正方形类:
class Triangle extends Figure {
Triangle(double a, double b) {
super(a, b);
}
double area() {
System.out.println("B области треугольника.");
return dim1 * dim2 / 2;
}
}
有一个入口点:
class AbsractAreas {
public static void main(String[] args) {
Rectangle r = new Rectangle(9, 5);
Triangle t = new Triangle(10, 8);
Figure figRef = r;
System.out.println("Площадь равна " + figRef.area());
figRef = t;
System.out.println("Площадь равна " + figRef.area());
}
}
我可以将其转换为接口吗?应该转换成接口吗?还是应该一分为二?
PS:接口的附加问题。我知道接口旨在保护类的工作方式。但是对类施加限制还不够吗(我的意思是访问修饰符)?
PS PS:为什么要在接口中添加定义方法体的功能?而现在,如果我在接口中定义一个方法,例如move (int n)
,在继承人中,我需要使用move (int n, int m)
. 用一个方法创建一个抽象类move ()
然后重新定义它以获得所需数量的参数不是更容易吗?或者您是否有能力在接口中覆盖方法中的参数数量?还是我们仍然有两种方法move (int n)
和move (int n, int m)
?
PS PS PS:抱歉这么多问题。我只是想深入了解这个问题。)
例如,有两个具有以下结构的表:
CREATE TABLE A (
ID number PRIMARY KEY,
TEXT varchar2(4000)
);
CREATE TABLE B (
ID number PRIMARY KEY REFERENCES A,
KEY varchar2(256)
);
在表 A 上创建了两个触发器(它们在这个问题中给出)。
第一个触发器Id
为两个 PK 生成。在第二个触发器中,文本被加密,加密应该替换 A 中插入的文本,并且使用加密密钥,它应该在表 B 中插入一条新记录。
但是由于表 B 上的外键,我无法在其中插入一条Id
不在表 A 中的记录。
问题是,如何实施?
当您尝试向表中插入记录accounts
时,必须对其进行加密,并且必须将新记录添加到包含插入记录的代码和加密密钥的第三方表中。为此,我决定做一个触发器。关键是该表accounts
已经有一个生成唯一值的触发器。我表示要先生成PK,然后调用新的触发器。
为此,我修改了触发器 PK:
CREATE OR REPLACE TRIGGER ACCOUNTS_Triger
before INSERT ON ACCOUNTS FOR each ROW
FOLLOWS trig_insert
BEGIN
:new.ACCOUNT_ID := ACCOUNTS_seq.nextval;
END;
新的触发代码:
CREATE OR REPLACE TRIGGER trig_insert
BEFORE INSERT ON ACCOUNTS
FOR EACH ROW
DECLARE
p_key VARCHAR2(200);
BEGIN
dbms_output.put_line(:new.ACCOUNT_ID);
INSERT INTO ACCOUNTS_KEY VALUES(:new.ACCOUNT_ID, p_key);
END;
目前,我收到一条错误消息,指出该字段:new.ACCOUNT_ID
包含null
.
如何更改代码以便按我指定的顺序依次调用触发器?
需要通过 OUT 参数实现程序的输出,而不使用剪贴板,即dbms_output.put_line
.
该程序在包装中。
PROCEDURE array_app
(street IN Streets.TITLE%TYPE,
dom IN APARTMENTS.HOUSE%TYPE,
res OUT Varchar2)
IS
CURSOR my_cur IS SELECT DISTINCT idapart FROM POSSESSION;
CURSOR cur1 (street IN VARCHAR2, dom IN INTEGER)
IS
SELECT APARTMENTS.id, num FROM APARTMENTS, Streets
WHERE HOUSE = dom AND TITLE = street AND APARTMENTS.IDSTREET = Streets.ID;
kv INTEGER;
cnumber number;
str Varchar2(100);
BEGIN
res := '';
OPEN cur1 (street, dom);
FETCH cur1 INTO cnumber, kv;
FOR f IN my_cur LOOP
IF f.idapart = cnumber THEN
str := res;
select str || ', ' || kv INTO res from dual;
RETURN;
END IF;
END LOOP;
CLOSE cur1;
END;
和一个过程调用
DECLARE
res1 Varchar2(100);
BEGIN
pack.array_app('Татищева', 75, res1);
END;
数据示例:这是一个房屋表,其中的列分别是代码、街道和门牌号以及公寓号:
CREATE TABLE Apartments (id INTEGER PRIMARY KEY, idstreet VARCHAR2(100), house INTEGER NOT NULL, num INTEGER);
INSERT INTO Apartments (id, idstreet, house, num) VALUES (1, 'Татищева', 75, 5);
INSERT INTO Apartments (id, idstreet, house, num) VALUES (2, 'Кирова', 3, 15);
INSERT INTO Apartments (id, idstreet, house, num) VALUES (3, 'Новая', 28, 34);
INSERT INTO Apartments (id, idstreet, house, num) VALUES (4, 'Татищева', 75, 150);
还有一个所有权表,其中包含所有权对象的代码:
CREATE TABLE Possession (id INTEGER PRIMARY KEY, idapart INTEGER NOT NULL REFERENCES Apartments);
INSERT INTO Possession (id, idapart) VALUES (1, 1);
INSERT INTO Possession (id, idapart) VALUES (2, 4);
因此,结果,代码为 1 的记录被选中并返回公寓号码。如果输入数据集中有多个元素包含在两个带有数据的表中,则应返回所有相应的公寓号码。
有一个包含数据的集合。我向它写了以下请求:
var rezult = Должники
.GroupBy(x => ((x.num-1)/36).ToString())
.Select(x => new { a = x
.Select(y => new { y.dolg, y.num, y.fam })
.OrderByDescending(y=>y.dolg)
.Take(3),
b = x.Key});
它有效,我得到了解决方案的一部分。我需要按 dolg 字段的降序对该请求进行排序。我试图在最后添加这样的结构:
.OrderByDescending(x=>x.a)
但是,然后我得到异常“至少一个对象必须实现 IComparable 接口”。然后如何在不考虑先前完成的分组的情况下进行排序?添加
List<Должник> Должники = new List<Должник>();
Должники.Add(new Должник(58.7, "Карапузова", 5));
Должники.Add(new Должник(34.5, "Чуприн", 10));
Должники.Add(new Должник(58.7, "Карапузова", 5));
Должники.Add(new Должник(34.5, "Чуприн", 10));
Должники.Add(new Должник(64.1, "Большова", 25));
Должники.Add(new Должник(54.6, "Бурцев", 15));
Должники.Add(new Должник(21.3, "Беленкова", 30));
Должники.Add(new Должник(87.9, "Сырова", 37));
Должники.Add(new Должник(27.9, "Малец", 42));
Должники.Add(new Должник(54.6, "Бакарчук", 86));
Должники.Add(new Должник(58.7, "Макарова", 90));
Должники.Add(new Должник(34.5, "Калашникова", 100));
Должники.Add(new Должник(64.1, "Мосин", 97));
Должники.Add(new Должник(54.1, "Драгунов", 107));
Debtor 类本身也已实现,并包含以下字段:
public double dolg;
public String fam;
public int num;
我需要排序才能在债务领域工作
其实名字就是问题。代码如下:
private bool isGrounded = true;
private bool isAir = false;
private void Update()
{
if (isGrounded) State = CharState.Idle;
if (isGrounded && Input.GetButtonDown("Jump")) Jump();
//if (isAir && Input.GetButtonDown("Jump")) DoubleJump();
//if (isGrounded && Input.GetButtonDown("Jump + Jump")) DoubleJump();
}
private void Jump()
{
if (Input.GetButtonDown("Jump")) DoubleJump();
else { rigidbody.AddForce(transform.up * jumpForce, ForceMode2D.Impulse); }
//rigidbody.AddForce(transform.up * jumpForce, ForceMode2D.Impulse);
//isAir = true; isGrounded = false;
}
private void DoubleJump()
{
rigidbody.AddForce(2 * transform.up * jumpForce, ForceMode2D.Impulse);
//isAir = false;
//isGrounded = true;
}
上一次尝试是这样的,但是当 Jump 方法被激活时,角色立即陷入了 DoubleJump,虽然不应该这样。
给定一个长度为 (n+1) 的数组 A,其中包含从 1 到 n 的自然数。在 O(n) 时间内查找任何重复元素,无需修改数组且不使用额外内存。
public static void main (String[] args){
int[] array = {7, 5, 2, 5, 3, 2, 1, 8, 4};
newFind(array);
}
public static void newFind(int[] mas){
int index = mas.length;
int el = mas[index - 1];
int object = mas[el - 1];
while (true){
object = mas[el - 1];
el = mas[object - 1];
el = mas[el - 1];
el = mas[el - 1];
if (object == el) {
System.out.println(el);
break;
}
}
}
我是这样实现的,但是如果循环有更多或更少的步骤,那么程序就会中断。我的问题是我不明白如何计算循环长度到重复元素并在屏幕上显示元素。请帮帮我。
问题在问题的标题中。我有几节课。这是第一个
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class GraphicalDisplay {
private JFrame frame;
private JLabel titleLabel1;
private JLabel titleLabel2;
private JLabel titleLabel3;
private JLabel titleLabel4;
private JLabel titleLabel5;
private TextField text;
private Button button;
private JLabel titleLabel6;
public GraphicalDisplay(String title1, String title2, String title3, String title4) {
buildFrame();
titleLabel1.setText(title1);
titleLabel2.setText(title2);
titleLabel3.setText(title3);
titleLabel6.setText(title4);
}
private void buildFrame() {
frame = new JFrame("Графический дисплей");
frame.setPreferredSize(new Dimension(800, 300));
frame.setLayout(new GridLayout(8, 1));
titleLabel1 = new JLabel();
titleLabel2 = new JLabel();
titleLabel3 = new JLabel();
titleLabel6 = new JLabel();
text = new TextField("", 50);
button = new Button("Ввести");
button.addActionListener((ActionListener) this);
frame.add(titleLabel1);
frame.add(titleLabel2);
frame.add(titleLabel3);
frame.add(text);
frame.add(button);
frame.add(titleLabel6);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setAlwaysOnTop(true);
frame.setVisible(true);
frame.pack();
}
@Override
public void mouseClicked(ActionEvent e) {
getText1();
}
public String getText1() {
String textbutton = text.getText();
return textbutton;
}
public void setText4(String text) {
titleLabel6.setText(text);
}
}
这是第二个
import java.awt.event.MouseEvent;
import java.util.HashSet;
public class SupportSystem
{
private InputReader reader;
private Responder responder;
public GraphicalDisplay display1;
public SupportSystem()
{
reader = new InputReader();
responder = new Responder();
}
public void start()
{
boolean finished = false;
printWelcome();
while(!finished) {
String textbutton = display1.mouseClicked(MouseEvent);
HashSet<String> input = reader.getInput(textbutton);
if(input.contains("exit")==true) {
finished = true;
}
else {
String response = responder.generateResponse(input);
System.out.println(response);
}
}
printGoodbye();
}
public void printWelcome()
{
display1 = new GraphicalDisplay("Добро пожаловать в техподдержку DodgySoft.", "Расскажите нам о вашей проблеме.", "Введите 'exit' для выхода из системы.","");
}
private void printGoodbye()
{
display1.setText4("Приятно было пообщаться. До свидания...");
}
}
研究 Internet 上的内容,我发现了各种处理程序、侦听器、事件等。我自己甚至无法理解它的外观,更不用说工作了。帮助!
有 2 个带数字的数组。它们中的元素具有一定的依赖性,即 数组的 0 元素 1 “链接”到数组的 0 元素 2,依此类推。有必要以某种方式以相对于 Vi / Wi 的降序对对象进行排序,并将其写入新的集合或数组中。然后,如有必要,当从那里取出对象时,以某种方式获得它们的原始关系。
static int[] values = new int[] {10, 8, 3, 8, 8}; // цены
static int[] weights = new int[] {8, 3, 4, 3, 3}; //вес предметов
PS:我用贪心算法解决背包问题
我有分贝。我连接到它并请求感兴趣的领域。如何进一步将收到的信息放在 Word 中的表格中(准确地说,如何循环接收收到的信息以及如何获取其特定值)。也许有些事情需要做不同的事情,建议。
int Rieltor_code = int.Parse(comboBox3.SelectedValue.ToString());
if (comboBox4.Text.Trim() == "Таблица") {
con.Open();
string query = "SELECT \"Object_nedvizimosti\".\"adress\", \"Prodaja\".\"Data\",
\"Object_nedvizimosti\".\"stoimost\", \"Prodaja\".\"Stoimost\",
(\"Prodaja\".\"Stoimost\" /\"Object_nedvizimosti\".\"stoimost\") " +
"FROM \"Prodaja\", \"Object_nedvizimosti\", \"Rieltor\" " +
"WHERE \"Prodaja\".\"Object_code\" = \"Object_nedvizimosti\".\"object_code\"
and" + " \"Object_nedvizimosti\".\"statuc\" = 0
and \"Prodaja\".\"Rieltor_code\" = \"Rieltor\".\"rieltor_code\""
+ @Rieltor_code ;//еще нужна дата продажи
NpgsqlCommand com = new NpgsqlCommand(query, con);
com.ExecuteNonQuery();
con.Close();
var Ворд1 = new Ворд.Word.Application();
Ворд1.Visible = true;
Ворд1.Documents.Add();
Ворд1.Selection.TypeText("ТАБЛИЦА ОБЪЕКТОВ НЕДВИЖИМОСТИ");
Ворд1.ActiveDocument.Tables.Add(Ворд1.Selection.Range, 30, 5,
Ворд.Word.WdDefaultTableBehavior.wdWord9TableBehavior,
Ворд.Word.WdAutoFitBehavior.wdAutoFitContent);
while (query.Read())
{
Ворд1.ActiveDocument.Tables[1].Cell(i, 1).Range.InsertAfter(query.GetValue(1).ToString());
Ворд1.ActiveDocument.Tables[1].Cell(i, 2).Range.InsertAfter(query.GetValue(2).ToString());
Ворд1.ActiveDocument.Tables[1].Cell(i, 3).Range.InsertAfter(query.GetValue(3).ToString());
Ворд1.ActiveDocument.Tables[1].Cell(i, 4).Range.InsertAfter(query.GetValue(4).ToString());
Ворд1.ActiveDocument.Tables[1].Cell(i, 5).Range.InsertAfter(query.GetValue(5).ToString());
}
Ворд1.Selection.MoveDown(Ворд.Word.WdUnits.wdLine, 9); ; }